如何在不同类的Iterator FOR中传递变量列表?

时间:2019-04-28 09:28:36

标签: flutter

我试图将变量List _cities放在不同的类中,然后使用Iterator“ for”传递它们,但是在“ Iterator”中显示错误。请帮助我如何在不同类的Iterator中传递变量List _cities? [https://i.stack.imgur.com/kVTbj.jpg]

class romania_state {
  romania_state({this.state});

  List<String> state = [
    "",
    "Cluj-Napoca",
    "Bucuresti",
  ];
}

class romania_city {
  romania_city({this.Cluj-Napoca, this.Bucuresti});

  List<String> Cluj-Napoca = [
   "",
   "A",
   "B"
  ];

  List<String> Bucuresti = [
   "",
   "Y",
   "Z"
  ];
}

class RegisterPageBodyState extends State<RegisterPageBody>
with SingleTickerProviderStateMixin {

  romania_state romaniaState = new romania_state();
  romania_city romaniaCity = new romania_city();

  List<DropdownMenuItem<String>> _dropDownMenuStates;

  List<DropdownMenuItem<String>> getDropDownMenuState() {
    List<DropdownMenuItem<String>> state1 = List();
    for (String statelist in romaniaState.state) { //Error in here
      state1.add(DropdownMenuItem(value: statelist, child: Text(statelist)));
    }

    return state1;
  }

  List<DropdownMenuItem<String>> getDropDownMenuCluj-Napoca() {
    List<DropdownMenuItem<String>> Cluj-Napoca1 = List();
    for (String Cluj-Napocalist in romaniaCity.Cluj-Napoca) { //Error in here
      Cluj-Napoca1.add(DropdownMenuItem(value: Cluj-Napocalist, child: 
      Text(Cluj-Napocalist)));
    }
  return Cluj-Napoca1;
 }

 List<DropdownMenuItem<String>> getDropDownMenuBucuresti() {
    List<DropdownMenuItem<String>> Bucuresti1 = List();
    for (String Bucurestilist in romaniaCity.Bucuresti) { //Error in here
      Bucuresti1.add(DropdownMenuItem(value: Bucurestilist, child: 
      Text(Bucurestilist)));
    }
    return Bucuresti1;
  }
}

1 个答案:

答案 0 :(得分:0)

尝试从列表名称中删除下划线(_)。如here所述,在变量的开头添加下划线会使它在Dart中成为“私有”。