我从sqflite数据库中加载了GridView.builder中的项目。由于它的模型类不是重要的,当然,我不能从那里对项目创建选择效果。
我所说的选择效应是这样的:

当用户点击某一项时,它将被选中。
GridView.builder(
gridDelegate:.....,
itemBuilder: (BuildContext context, int index) {
bool _selectItem = false;
return InkWell(
onTap: () {},
child: Stack(
children: <Widget>[
itemsList[index]), //====Actual Item=====//
InkWell(onTap: () { //===To create Select Effect====//
setState(() {
if (_selectItem == false) {
_selectItem = true;
print("Item Selected");
} else {
_selectItem = false;
print("Item UnSelected");
}
});
},
child: Opacity(
opacity: _selectItem == true ? 0.5 : 0.0,
child: Icon(Icons.select)
),]); },
itemCount: itemsList.length,
))我可以创建一个选择效果,但它选择所有的项目,如果我点击任何一个项目。如何为每个单项创建选择效果。
那么,我如何为每个项目创建选择效果呢?
我在代码中只写了相关的东西
链接到原始问题:(颤振)网格视图生成器中项的选择效果
发布于 2019-04-05 09:53:06
发布于 2019-04-05 16:04:21
您可以尝试在简单的动画中使用Hero小部件,但是如果使用自定义动画,则必须将其更改为有状态小部件。
https://stackoverflow.com/questions/55532316
复制相似问题