如何将动态小部件添加到字幕中?(对于列表磁贴)



我正在尝试将筹码添加到ListTile副标题中,以便当通过ListView.builder创建listTile时,根据用户的选择,他们可以在字幕中拥有或看到多个筹码。

ListView.builder(
scrollDirection: Axis.vertical,
itemCount: myShoppingBasketList.length,
itemBuilder: (ct, shoppingListViewBuilderItemInteger)
{
return Card(
child: ListTile(key: UniqueKey(),
//dense: true,
leading: ...,
title: ...
subtitle: Wrap(<add chips here)...
onTap: () 
{
// Code to add new chips depending on selection

}
})

所以 - 我怎么能动态 += 添加到包装小部件。当我说

+=

我希望的是,如果一个芯片就像一个字符串,那么我想要这样的东西:

Wrap(SomeChipContainerWidget = SomeChipContainerWidget+ newChipWidget))

你看到我的问题了吗??

因此,假设副标题是一个文本小部件,那么里面的字符串文本可以是:

Text(stringVar += stringVar + newString(

我已经尝试了一切 - 你无法想象。我看过扩展图块 - 不起作用、动画等。

任何帮助将不胜感激。甚至同情。

声明一个列表,并根据您的要求将芯片添加到列表中。

示例代码:

List<Chip> chips = []; // Global Variable (Add a chip by default)
[...]
ListView.builder(
scrollDirection: Axis.vertical,
itemCount: myShoppingBasketList.length,
itemBuilder: (ct, shoppingListViewBuilderItemInteger)
{
return Card(
child: ListTile(key: UniqueKey(),
//dense: true,
leading: [...],
title: [...]
subtitle: Wrap(children: <Widget>[chips])...
onTap: () 
{
setState((){
chips.add(
Chip() //Your new chip
);
});
}
})

最新更新