Android studio 将管线添加到由模型列表组成的菜单

Android studio 将管线添加到由模型列表组成的菜单,android-studio,flutter,Android Studio,Flutter,我的颤振应用程序中有一个菜单,使用模型列表进行导航,如下所示: 当我点击列表中的一个元素时,我想查看一条材料路线,因为我没有制作菜单,而且我对颤振没有太多的知识,我不知道如何做,或者是否可能 每个建议都很受欢迎 以下是自定义列表的视图: class NavigationModel{ String title; IconData icon; NavigationModel({this.title,this.icon}); } List<NavigationModel>

我的颤振应用程序中有一个菜单,使用模型列表进行导航,如下所示:

当我点击列表中的一个元素时,我想查看一条材料路线,因为我没有制作菜单,而且我对颤振没有太多的知识,我不知道如何做,或者是否可能

每个建议都很受欢迎

以下是自定义列表的视图:

class NavigationModel{
  String title;
  IconData icon;
  NavigationModel({this.title,this.icon});
}

List<NavigationModel> navigationItems = [
  NavigationModel(title: "Dashboard",icon: Icons.insert_chart),
  NavigationModel(title: "Calendar",icon:Icons.calendar_today),
  NavigationModel(title: "terrain",icon:Icons.landscape),
  NavigationModel(title: "professeur",icon:Icons.person_pin),
  NavigationModel(title: "joueur",icon:Icons.person_add),
];

我不熟悉那个
collasingListTile
widget,我猜它在按下时会展开?无论如何,例如,如果您希望在按下
listile
小部件时导航到路线,您可以执行以下操作:

ListTile(
 title: navigationItems[counter].title,
 icon: navigationItems[counter].icon,
 animationController: _animationController,
 onTap: () {
  Navigator.push(context, MaterialPageRoute(builder: (context) => SomePage()));
)

最后,我解决了这个问题,并对这个问题感到骄傲。 我所做的是将列表中的每个元素都放入一个墨水池()。 使用此解决方案,菜单将保持不变,我可以在onTap()中进行任何处理


我所理解的是,CollasingListTile小部件是一个定制小部件,专门为此菜单制作,因此它没有实现onTap()。
return MaterialApp(
  debugShowCheckedModeBanner: false,
  title: 'Recipes',
  initialRoute: '/connection',
  routes: {
    '/': (context) => Connection(),
    '/connection': (context) => Connection(),
    '/connexion': (context) => Connexion(),
    '/newclub': (context) => NewClub(),
  },
);
ListTile(
 title: navigationItems[counter].title,
 icon: navigationItems[counter].icon,
 animationController: _animationController,
 onTap: () {
  Navigator.push(context, MaterialPageRoute(builder: (context) => SomePage()));
)
Expanded(
  child: ListView.builder(
    itemBuilder: (context, counter){
      return new InkWell(
        child: CollapsingListTile(
          title: navigationItems[counter].title,
          icon: navigationItems[counter].icon,
          animationController: _animationController,
        ),
        onTap: () {
          print('button click: $counter');
        }
      );
     },
     itemCount: navigationItems.length,
   ),
 ),
 SizedBox(
   height: 50.0,
 )
],