flutter 通过事件打开侧边栏
初始化侧边栏的关键scaffold
// 使用GlobalKey来获取ScaffoldState的引用,从而能够控制Scaffold的行为,例如打开侧边栏 final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();
Scaffold组件及其AppBar
// 创建一个Scaffold组件,其中AppBar的标题为“商品列表” return Scaffold( // 将先前创建的_scaffoldKey关联到这个Scaffold组件上 key: _scaffoldKey, appBar: AppBar( title: Text("商品列表"), ), );
筛选按钮及其点击事件
// 创建一个可扩展的组件,当点击时打开Scaffold的侧边栏 Expanded( flex: 1, child: InkWell( child: Padding( // 设定内边距,其中上下的内边距使用ScreenAdaper.height来适应不同屏幕尺寸 padding: EdgeInsets.fromLTRB( 0, ScreenAdaper.height(16), 0, ScreenAdaper.height(16)), child: Text("筛选", textAlign: TextAlign.center), ), onTap: () { // 当点击这个InkWell时,利用_scaffoldKey引用的ScaffoldState打开侧边栏 _scaffoldKey.currentState.openEndDrawer(); }, ), ),