Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 颤振阵列循环表_Flutter_Dart - Fatal编程技术网

Flutter 颤振阵列循环表

Flutter 颤振阵列循环表,flutter,dart,Flutter,Dart,我正在制作自己的颤振应用程序,但遇到了一个问题。我正在创建一个早餐班 class Breakfast { String foodTitle; String foodCalories; Breakfast({this.foodTitle, this.foodCalories}); } 从这个类中,我创建了一个包含该类对象的数组 class BreakfastFood { List<Breakfast> _breakfastFoodData = [ Break

我正在制作自己的颤振应用程序,但遇到了一个问题。我正在创建一个早餐班

class Breakfast {
  String foodTitle;
  String foodCalories;

  Breakfast({this.foodTitle, this.foodCalories});
}
从这个类中,我创建了一个包含该类对象的数组

class BreakfastFood {
  List<Breakfast> _breakfastFoodData = [
    Breakfast(
     foodTitle: "Bread",
     foodCalories: "100",
    ),
    Breakfast(
     foodTitle: "Soup",
     foodCalories: "50",
    ),
  ];

  int _foodTitle = 0;
  int _foodCalories = 0;

  String getFoodTitle() {
   return _breakfastFoodData[_foodTitle].foodTitle;
  }

  String getFoodCalories() {
    return _breakfastFoodData[_foodCalories].foodCalories;
  }
班级早餐{
列表_breakfastFoodData=[
早餐(
食品标题:“面包”,
食品目录:“100”,
),
早餐(
食品标题:“汤”,
食品目录:“50”,
),
];
int_foodTitle=0;
int_foodCalories=0;
字符串getFoodTitle(){
返回_breakfastFoodData[\u foodTitle].foodTitle;
}
字符串getFoodCalories(){
返回_breakfastFoodData[_foodCalories].foodCalories;
}
}

我创建了一个组件,它获取foodtitle和foodCalories并将它们放在一个小部件中


现在我想做一个函数,它循环遍历_breakfastfoodData的对象并显示它们。但是我不知道如何循环列表并将所有对象彼此分开显示。

\u代码中的breakfastFoodData是私有属性(因为它开始于),您应该更改为breakfastFoodData

  • 您可以使用ListView.builder生成列表:

     List<Breakfast> datas= new BreakfastFood().breakfastFoodData;
      return ListView.builder(
        itemCount: datas.length,
        itemBuilder: (context, index) {
          return ListTile(
            title: Text('${datas[index].foodTitle}'),
          );
        },
      );
    
    List data=new BreakfastFood().breakfastFoodData;
    返回ListView.builder(
    itemCount:datas.length,
    itemBuilder:(上下文,索引){
    返回列表块(
    标题:文本(“${datas[index].foodTitle}”),
    );
    },
    );
    

您只需在此处定义您的类:

班级早餐{
列表项=[
早餐(
食品标题:“面包”,
食品目录:“100”,
),
早餐(
食品标题:“汤”,
食品目录:“50”,
),
];
列表获取项=>[…\u项];
}
然后调用它来显示所有项目的列表视图:

breakfastfooddata=BreakfastFood();
ListView.builder(
itemCount:foodData.items.length,
itemBuilder:(ctx,索引){
返回列表块(
标题:文本(“${foodData.items[index].foodTitle}”),
字幕:文本(“${foodData.items[index].foodCalories}”),
);
}
)

我认为您可以使用listview.builder并利用其索引属性来循环数组中的所有ojc。您的信息不足。您是否知道,
\u breakfastfoodData
属性是隐藏的/私有的?您需要一个允许访问它并可以循环它的方法(
for
)。