使用带有编辑图标的CheckboxListTile小部件作为辅助小部件。
我希望能够编辑复选框列表中的每一项。
添加函数以编辑CheckboxListTile中的每一项的好方法是什么?
Widget _buildItem(BuildContext context, int index) {
final remind = reminders[index];
return CheckboxListTile(
value: remind.isDone,
title: Text(remind.title + "-" + remind.message),
secondary: const Icon(Icons.edit),
controlAffinity: ListTileControlAffinity.leading,
onChanged: (bool isChecked) {
onRemindToggle(remind, isChecked);
},
);
}发布于 2019-01-03 10:34:58
可能有更好的方法来做这件事。但是,就如何实现这一目标给出一个简单的想法如下:
static String name = "John";
Map<String, bool> values = {
name: true,
};
Widget checkbox()
{
return ListView(
children: values.keys.map((String key) {
return new CheckboxListTile(
title: new Text(name),
value: values[key],
secondary: IconButton(
icon: Icon(Icons.edit),
onPressed: (){
setState(() {
name = "James";
});
print("Name is : $name");
},
),
controlAffinity: ListTileControlAffinity.leading,
onChanged: (bool value) {
setState(() {
values[key] = value;
});
},
);
}).toList(),
);
}这将产生类似于this的东西。
当按下编辑图标时,字段从john更改为James。类似地,您可以根据需要编辑代码。希望它有所帮助:)
https://stackoverflow.com/questions/54019287
复制相似问题