我是 Flutter 的新手,希望有人帮助我编写我在 github 中找到的我想使用的代码。看看下面的链接 https://github.com/JohannesMilke/drawer_example
这是一个导航抽屉的例子。我喜欢开发人员编码它的方式,并想使用这个例子。问题是开发人员没有实现导航到另一个页面。当您单击抽屉中的项目时,它只会在控制台中打印一条消息。
我想更进一步。我想修改代码,以便当您单击一个项目时,它将导航到另一个页面并且抽屉将关闭。抽屉图标应保留在显示的新页面的工具栏上。此外,当您导航到另一个页面时,该页面的标题应在工具栏中设置。
当我查看代码时,我知道在哪里更改,但我没有成功。我想我需要更改代码底部的正文标签。问题是我不知道如何调用drawer_widget.dart 文件中的DrawerWidgetState 类。
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
final String appTitle = 'Ttitle';
@override
Widget build(BuildContext context) => MaterialApp(
title: appTitle,
theme: ThemeData(
primaryColor: Colors.red,
textTheme: TextTheme(
subhead: TextStyle(
color: Colors.black.withOpacity(0.4),
),
),
dividerColor: Colors.black.withOpacity(0.4),
),
home: MainPage(appTitle: appTitle),
);
}
class MainPage extends StatefulWidget {
final String appTitle;
const MainPage({this.appTitle});
@override
MainPageState createState() => MainPageState();
}
class MainPageState extends State<MainPage> {
@override
Widget build(BuildContext context) => Scaffold(
appBar: AppBar(
title: Text(widget.appTitle),
),
drawer: DrawerWidget(),
body: container()
);
}
我在drawer_widget.dart 文件中定义了以下函数
getDrawerItemWidget(int pos) {
print('testing');
switch (pos) {
case 0:
return new FirstFragment();
case 1:
return new SecondFragment();
case 2:
return new ThirdFragment();
default:
return new Text("Error");
}
}
但我不知道如何从 Mainpage Body 标记调用它并相应地设置标题。有人可以帮助修改代码,以便我可以导航到另一个页面并设置标题吗?完整代码在 https://github.com/JohannesMilke/drawer_example
提前致谢