Я создал модель города и создал класс провайдера для этого,
class CityModel {
String cityId;
String cityName;
CityModel({this.cityId, this.cityName});
}
Это класс провайдера
class CitiesProviders extends ChangeNotifier {
List<CityModel> citiesData = [];
void addData(CityModel data) {
citiesData.add(data);
notifyListeners();
}
List<String> get cityNames {
List<String> names = [];
citiesData.map((value) {
names.add(value.cityName);
});
return names;
}
}
Я просто хочу получить названия городов из списка городов. Используйте этот список имен, чтобы создать раскрывающийся список.
DropdownButton<String>(
value: currVal,
items: Provider.of<CitiesProviders>(context)
.cityNames
.map<DropdownMenuItem<String>>((String value) {
return DropdownMenuItem<String>(
value: value,
child: Text(value),
);
}).toList(),
onChanged: (value) {
currVal = value;
},
),
Но на экране ничего не отображается, также нет сообщения об ошибке. Я все делаю правильно? Или есть лучший способ сделать это? Любые предложения и ответы помогут. Спасибо!