我的抽屉位于我的 main.dart 文件中。我想用另一页打开抽屉。当然 Scaffold.of(context).openDrawer();没有工作。但我不知道。
最佳答案
像这样创建一个公共(public)抽屉:
import 'package:flutter/widgets.dart';
class PublicDrawer extends StatefulWidget {
PublicDrawer({Key key}) : super(key: key);
@override
_PublicDrawerState createState() => _PublicDrawerState();
}
class _PublicDrawerState extends State<PublicDrawer> {
@override
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
return Container();
}
}
在您的所有其他页面上,使用脚手架来实现您的抽屉:
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:~~~~~~~/Widgets/drawer.dart';
class ProfilePage extends StatefulWidget {
ProfilePage({Key key}) : super(key: key);
@override
_ProfilePageState createState() => _ProfilePageState();
}
class _ProfilePageState extends State<ProfilePage> {
@override
Widget build(BuildContext context) {
return SafeArea(
child: Scaffold(
drawer: PublicDrawer(), <----
body: Container(),
),
);
}
}
关于flutter - 在其他页面打开抽屉,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62486027/