首页 > 解决方案 > 将路线添加到由模型列表组成的菜单

问题描述

我的颤振应用程序中有一个菜单,它使用模型列表进行导航,它看起来像这样:

我是菜单

当我单击列表中的一个元素时,我想遵循其中一条材料路线,因为我没有制作菜单,而且我对颤振没有太多了解,我不知道该怎么做,或者如果它是甚至可能。

欢迎每一个建议!

这是自定义列表的视图:

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),
];

菜单生成器示例:

children: <prefix0.Widget>[
  SizedBox(
    height: 50.0,
  ),
  CollapsingListTile(
     title: '$nickname',
     icon: Icons.person,
     animationController: _animationController,
  ),
  Expanded(
    child: ListView.builder(
      itemBuilder: (context, counter){
        return CollapsingListTile(
          title: navigationItems[counter].title,
          icon: navigationItems[counter].icon,
          animationController: _animationController,
        );
      },
      itemCount: navigationItems.length,
    ),
  ),
  SizedBox(
    height: 50.0,
  )
],

应用程序中的路线:

return MaterialApp(
  debugShowCheckedModeBanner: false,
  title: 'Recipes',
  initialRoute: '/connection',
  routes: {
    '/': (context) => Connection(),
    '/connection': (context) => Connection(),
    '/connexion': (context) => Connexion(),
    '/newclub': (context) => NewClub(),
  },
);

标签: android-studioflutter

解决方案


我不熟悉那个CollapsingListTile小部件,我猜它在按下时会扩展?无论如何,例如,如果您希望在按下ListTile小部件时导航到路线,您可以这样做:

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

推荐阅读