首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >颤振CheckboxListTile辅助小部件功能

颤振CheckboxListTile辅助小部件功能
EN

Stack Overflow用户
提问于 2019-01-03 09:16:08
回答 1查看 3.3K关注 0票数 1

使用带有编辑图标的CheckboxListTile小部件作为辅助小部件。

我希望能够编辑复选框列表中的每一项。

!(https://ibb.co/m0Gc3Gx)

添加函数以编辑CheckboxListTile中的每一项的好方法是什么?

代码语言:javascript
复制
 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);
      },
    );
  }
EN

回答 1

Stack Overflow用户

发布于 2019-01-03 10:34:58

可能有更好的方法来做这件事。但是,就如何实现这一目标给出一个简单的想法如下:

代码语言:javascript
复制
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。类似地,您可以根据需要编辑代码。希望它有所帮助:)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54019287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档