我正在处理侧边栏,我需要在现有菜单项中添加一个子菜单。
我有两个文件,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',
),
问题是,我需要制作传感器参数
父下拉菜单,其中包含我已有的菜单项列表。子菜单下拉项是:
TemChartClickEvent,
HumChartClickEvent,
MoisChartClickEvent,
PhChartClickEvent,
NurChartClickEvent,
GasChartClickEvent,
使用集团模式创建的。 父菜单:
MenuItem(
icon: Icons.sensor_window,
title: 'Sensor Parameters',
),
我一直在互联网上寻找优质资源并制作菜单,但是我无法让它发挥作用。
任何人都可以帮我设置它,因为我上面已经有MenuItem代码,我如何适应另一堆代码调用DropDownMenu及其功能,然后将其传递到父菜单中,上面的“MenuItem”代码< /p>
答案 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")],
)
],
),
);