如何在颤振中创建子菜单下拉菜单

时间:2021-07-07 02:47:03

标签: flutter menu flutter-layout flutter-dropdownbutton

我正在处理侧边栏,我需要在现有菜单项中添加一个子菜单。

我有两个文件,menu_items.dart 和 sidebar.dart。 Menu_Items 代码:

import 'package:flutter/material.dart';

class MenuItem extends StatelessWidget {
  const MenuItem({Key key, this.icon, this.title, this.onTap})
      : super(key: key);
  final IconData icon;
  final String title;
  final Function onTap;
  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      onTap: onTap,
      child: Padding(
        padding: const EdgeInsets.all(16),
        child: Row(
          children: [
            Icon(
              icon,
              color: Colors.white,
              size: 20,
            ),
            SizedBox(
              width: 20,
            ),
            Text(
              title,
              style: TextStyle(
                fontWeight: FontWeight.w300,
                fontSize: 15,
                color: Colors.white,
              ),
            ),
          ],
        ),
      ),
    );
  }
}

这就是我在 Sidebar.dart 中使用它的方式:

   MenuItem(
      icon: Icons.sensor_window,
      title: 'Sensor Parameters',
      ),

问题是,我需要制作传感器参数

enter image description here

父下拉菜单,其中包含我已有的菜单项列表。子菜单下拉项是:

TemChartClickEvent,
 HumChartClickEvent,
 MoisChartClickEvent,
 PhChartClickEvent,
 NurChartClickEvent,
 GasChartClickEvent,

使用集团模式创建的。 父菜单:

MenuItem(
      icon: Icons.sensor_window,
      title: 'Sensor Parameters',
      ),

我一直在互联网上寻找优质资源并制作菜单,但是我无法让它发挥作用。

任何人都可以帮我设置它,因为我上面已经有MenuItem代码,我如何适应另一堆代码调用DropDownMenu及其功能,然后将其传递到父菜单中,上面的“MenuItem”代码< /p>

1 个答案:

答案 0 :(得分:1)

您已通过 ExpansionTile Widget 或已使用 multilevel_drawer package

Drawer(
  child: ListView(
  children: <Widget>[
  ExpansionTile(
  title: Text("Expansion Title"),
    children: <Widget>[Text("children 1"), Text("children 2")],
  )
 ],
 ),
);