【问题标题】:Add a stateless Widget in a String List在字符串列表中添加无状态小部件
【发布时间】:2021-04-17 17:05:28
【问题描述】:

我正在尝试在 listView 中的每个字符串之后添加一个自定义无状态小部件。 有没有办法在字符串列表或 listView 中的每个项目之后添加自定义无状态小部件。

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    试试这个

      var myStrings = ['A', 'B', 'C'];
    
      foo() {
        List<Widget> widgets = [];
        for (int i = 0; i < myStrings.length; i++) {
          widgets.add(Text(myStrings[i]));
          widgets.add(Text('Your Custom Widget'));
        }
        return widgets;
      }
    ...
    ...
    
      ListView(
        children: foo(),
      )
    

    【讨论】:

    • 这就是我想要的,但是否可以将小部件列表作为一个字符串一个接一个地获取。现在我在 ListView 中获取小部件,这没问题,但我试图返回 widgets.join() 并将其用作简单的 Text() 但它给了我输出 Text("A")Text("my custom小部件“)文本(“B”)文本(“我的自定义小部件”)...我想要这种格式 A 我的自定义小部件 B 我的自定义小部件等等。
    • 然后简单地做Text( myStrings[i] + 'my custom widget' )
    • 如果我这样做了,我会得到这个输出 A Text("my custom widget"), B Text("my custom widget") C Text("my custom widget") 我想要喜欢这个“A 我的自定义小部件 B 我的自定义小部件”一个接一个
    • Text( myStrings.join('my custom widget') )
    • 是的,这是我想要的方向,但问题是 join() 方法接受我想在其中放置小部件的字符串。我试图将我的小部件保存在一个变量中,然后像 Text(myStrings.join('$variable which contains my widget')) 一样将该变量放入。我得到了相同的结果,例如 "A Text("my custom widget")) B Text("my custom widget")"
    猜你喜欢
    • 1970-01-01
    • 2022-01-21
    • 2020-06-29
    • 2021-12-15
    • 2021-06-11
    • 2011-12-15
    • 1970-01-01
    • 1970-01-01
    • 2018-09-01
    相关资源
    最近更新 更多