有没有一种方法可以将Firestore生成的幻灯片/卡片上的UI个性化?扑

时间:2019-12-02 22:37:40

标签: user-interface flutter dart google-cloud-firestore

例如,我希望用户喜欢他们喜欢的东西,但缺点是,当我更改图标以表明他们单击按钮时,所有幻灯片的图标也会更改。如何个性化每张幻灯片,以便在UI上执行if / else语句时,它只会影响该特定的幻灯片。

1 个答案:

答案 0 :(得分:0)

不看实际代码很难帮忙,但要回答您的问题,您可以尝试在Firestore表中添加一个具有selected值的boolean列,以便在单击卡时可以将该项的列值更新为true并刷新状态,以便仅更改带有true的卡,而其余的卡保持不变,其中selectedfalse。 / p>

伪代码示例:

return FutureBuilder(
        future: getDataFromFirestore(),
        builder: (context, snapshot) {
          if (snapshot.hasData) {
            return Column(
              children: List.generate(snapshot.data.length, (itemIndex) {
                Macro macro = snapshot.data[itemIndex];
                return Card(
                    child: ListTile(
                  title: Text(snapshot.data["title"]),
                  subtitle: Text(snapshot.data["subtitle"]),
                  trailing: IconButton(
                      icon: snapshot.data["selected"] ? Icons.check : Icons.add //If card is selected, display checked icon else display add icon
                      onPressed: () async {setState(() {}); //Refresh state}