颤振应用程序中的多个列表构建器

时间:2021-03-01 07:28:52

标签: android flutter listview dart flutter-listview

我能够按照以下代码在 Flutter 应用程序中成功创建一个 listview.builder。

代码

Container(
     child:  StreamBuilder<QuerySnapshot>(
     

    stream: query2.snapshots(),

          builder: (BuildContext context,AsyncSnapshot<QuerySnapshot> snapshot) {


            var usernames = snapshot.data.docs.map((e) => e['itemName']);
            print("usernames");
            print(usernames);
            if (snapshot.hasError) {
              return Text('Something went wrong');
            }

            if (snapshot.connectionState == ConnectionState.waiting) {
              return Text("Loading");
            }

            return ListView.builder(
              itemCount: snapshot.data.docs.length,
              itemBuilder: (context, index){

                // String itemname =snapshot.data.docs[index]['itemName'] ?? "";
                return ListTile(title:Text(snapshot.data.docs[index]['itemName'] ?? ""
                ),);
          });
        }
      ),
     )

但我想在大约 5 种不同的 if-else 条件下创建列表视图构建器,但我无法这样做,我尝试在 StreamBuilder 上实现此功能,但无法实现三元运算符有效,但一次仅适用于两个条件而不是多个条件,我应该如何实现?

1 个答案:

答案 0 :(得分:0)

这很简单。

if(condition1)
   return Container(color:Colors.blue);
else if(condition2)
   return Container(color:Colors.yellow);
else if(condition3)
   return Container(color:Colors.green);
else if(condition4)
   return Container(color:Colors.red);

...etc.

 else 
   return SizedBox();