dart-onTap无法在我在flutter主文件之外创建的小部件中运行
发布时间:2022-04-24 18:49:48 301
相关标签: # 数据
我有三个文件:一个widget.dart文件,在其中我创建了一个名为WalletItemMenu,另一个data_generator.dart文件,我在其中创建了一个小部件列表,最后是我的主文件main.dart,我在其中使用了WalletItemMenu在GridView的data_generator.dart中创建。
widget.dart
InkWell WalletItemMenu(String titre,String img,MaterialColor? couleur){
return InkWell(
child: Container(
child: Card(
color: couleur,
child: InkWell(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Image.asset(img,height: 80),
SizedBox(height: 10),
Text(titre)
],
),
onTap: (){print("ok");},
),
),
),
onTap: (){print("ok");},
);
}
在data\u generator中。我创建了一个小部件列表锁屏WalletItem菜单
数据生成器. dart
List listeWalletItems(){
List list = [];
var el1 = WalletItemMenu("Achat des unités",Ozangue_porte_monaie,Colors.yellow);
list.add(el1);
var el2 = WalletItemMenu("Transfert de crédit",Ozangue_porte_monaie,Colors.yellow);
list.add(el2);
var el3 = WalletItemMenu("Achat article",Ozangue_porte_monaie,Colors.yellow);
list.add(el3);
var el4 = WalletItemMenu("Echange d'argent",Ozangue_porte_monaie,Colors.yellow);
list.add(el4);
return list;
}
在主文件中,我试图创建一个包含WalletItemMenu我事先在data_generator.dart中创建的。
main.dart
class MenuPorteMonaiePage extends StatefulWidget{
@override
_MenuPorteMonaiePageState createState() => _MenuPorteMonaiePageState();
}
class _MenuPorteMonaiePageState extends State{
List menus = [];
@override
void initState() {
// TODO: implement initState
super.initState();
menus = listeWalletItems();
}
@override
Widget build(BuildContext context){
return Scaffold(
backgroundColor: Colors.white,
body: SingleChildScrollView(
child: Container(
height: 500,
child: GridView.builder(
itemCount: menus.length,
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2,
),
itemBuilder: (BuildContext context,int index){
return menus[index];
},
),
),
)
);
}
问题是onTap不起作用。我怎样才能解决这个问题?提前谢谢。
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报