Flutter 颤振:将下拉按钮转换为Listview.builder
我有一个下拉按钮,按下时显示应用程序语言,当选择任何人时,应用程序语言会发生变化。现在我需要将这个下拉按钮转换为listview。生成器,使语言显示为列表而不是下拉列表,但无法做到这一点。如果有人能帮忙,我将不胜感激 这是我的代码: 语言课Flutter 颤振:将下拉按钮转换为Listview.builder,flutter,listview,dart,dropdown,Flutter,Listview,Dart,Dropdown,我有一个下拉按钮,按下时显示应用程序语言,当选择任何人时,应用程序语言会发生变化。现在我需要将这个下拉按钮转换为listview。生成器,使语言显示为列表而不是下拉列表,但无法做到这一点。如果有人能帮忙,我将不胜感激 这是我的代码: 语言课 class Language { final int id; final String flag; final String name; final String languageCode; Language(this.id, this
class Language {
final int id;
final String flag;
final String name;
final String languageCode;
Language(this.id, this.flag, this.name, this.languageCode);
static List<Language> languageList() {
return <Language>[
Language(1, "I agree with @Tirth that it's not clear what exactly is not working. However, with what you have provided here is a reusable ListView.builder
that will display your languages.
class LanguageList extends StatelessWidget {
final List<Language> languageList;
const LanguageList({Key key, this.languageList}) : super(key: key);
@override
Widget build(BuildContext context) {
return Expanded(
child: ListView.builder(
itemCount: languageList.length,
itemBuilder: (context, index) {
return Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
Text(languageList[index].id.toString()),
Text(languageList[index].name),
Text(languageList[index].flag),
Text(languageList[index].languageCode),
],
);
},
),
);
}
}
类语言{
最终int id;
最终字符串标志;
最后的字符串名;
最终字符串语言代码;
语言(this.id、this.flag、this.name、this.languageCode);
静态列表语言列表(){
返回[
语言(1),我同意@Tirth的说法,即不清楚到底什么不起作用。但是,您在这里提供的是一个可重用的ListView.builder
,它将显示您的语言
LanguageList(languageList: Language.languageList())
我同意@Tirth的观点,即不清楚到底是什么不起作用。但是,您在这里提供的是一个可重用的ListView.builder
,它将显示您的语言
LanguageList(languageList: Language.languageList())
这应该可以满足你的需要
ListView.builder(
收缩膜:对,
itemCount:Language.languageList().length,
itemBuilder:(上下文,索引){
Language=Language.languageList()[index];
返回手势检测器(
onTap:(){
_更改语言(语言)
},
孩子:排(
mainAxisAlignment:mainAxisAlignment.spaceAround,
儿童:[
正文(
e、 旗帜,
样式:TextStyle(字体大小:30),
),
文本(如名称)
],
)
);
},
)
这应该可以满足您的需要
ListView.builder(
收缩膜:对,
itemCount:Language.languageList().length,
itemBuilder:(上下文,索引){
Language=Language.languageList()[index];
返回手势检测器(
onTap:(){
_更改语言(语言)
},
孩子:排(
mainAxisAlignment:mainAxisAlignment.spaceAround,
儿童:[
正文(
e、 旗帜,
样式:TextStyle(字体大小:30),
),
文本(如名称)
],
)
);
},
)
什么不起作用?显示ListView.builder实现。什么不起作用?显示ListView.builder实现。