如何解决颤动中ListView.builder中的不同页面导航?
onTap: () {
Navigator.push(
context,MaterialPageRoute(builder: (context) => Animals()));
},
我正在尝试在 Inkwell Insider 中添加不同的页面路由导航 我尝试了一些不同的方法但它不起作用
我的列表视图名称
List title = [
'Animals','Birds','Body Parts','Country','Fish','Plants','Vehicle','Works',];
我希望这个导航到
List route = [Animals(),Birds(),BodyParts(),Country(),Fish(),Plant(),Vehicle(),Works(),];
解决方法
你可以这样做:
List pages = [['Animals',Animals()],['Birds',Birds()],['Body Parts',BodyParts()],['Country',Country()],['Fish',Fish()],['Vehicle',Vehicle()],['Plants',Plants()],['Works',Works()]];
现在:
ListView.builder(
itemCount: pages.length,itemBuilder: (context,index) {
return GestureDetector(
child: ListTile(title:Text(pages[index][0])),onTap: () {
Navigator.push(context,MaterialpageRoute(builder:(context)=>pages[index][1])));
},);
},)
,
你可以这样实现
ListView.builder(
itemCount: title.length,index) {
return TextButton(
onPressed: () {
//YOUR NAVIGATION CODE
},child: Text('${title[index]}'),);
},)
,
您有这些列表:
List<String> title = ['Animals','Birds','Body Parts','Country','Fish','Plants','Vehicle','Works'];
List<Widget> route = [Animals(),Birds(),BodyParts(),Country(),Fish(),Plant(),Vehicle(),Works()];
现在,您可以使用 ListView.builder 中的索引简单地映射小部件
ListView.builder(
itemCount: title.length,index) {
return ListTile(
title: title[index],onTap: () => Navigator.push(context,MaterialPageRoute(builder: (context) => route[index]))
);
}
)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。