如何在右侧放置抽屉小部件

KUR*_*HEM 8 flutter

如何在右侧放置抽屉小部件。也可以将两个Drawer小部件放置在应用栏两侧的单个页面中

Widget build(BuildContext context){
 return Scaffold(
  drawer: Drawer(
    child: ListView(
      children: <Widget>[
        ListTile(
          leading: Icon(Icons.shopping_cart),
          title: Text('Checkout'),
          onTap: (){
            Navigator.pushNamed(context, '/home');
          },
        ),
        ListTile(
          leading: Icon(Icons.report),
          title: Text('Transactions'),
          onTap: (){
            Navigator.pushNamed(context, '/transactionsList');
          },
        ),
      ]
    )
  ),
  body: SingleChildScrollView(
    child: Column(
      children : [
        _buildOrderHeader(),
        _buildOrderDetails(context),
      ]
    )
  )
);
Run Code Online (Sandbox Code Playgroud)

}'

Gün*_*uer 18

通过endDrawer: ...代替或补充使用drawer: ...来设置抽屉。

另请参阅https://docs.flutter.io/flutter/material/Scaffold/endDrawer.html

  • `Scaffold.of(context).openEndDrawer()` https://docs.flutter.io/flutter/material/ScaffoldState/openEndDrawer.html (3认同)

Kam*_*kar 10

要使用 Dart Null Safety 从右侧打开导航抽屉,您应该使用 endDrawer()。flutter 中有两个可用的抽屉参数。

  1. 抽屉(左侧)
  2. endDrawer(右侧)您可以看到 endDrawer 的示例。

要在按钮上单击打开 endDrawer。

_scaffoldKey.currentState!.openEndDrawer();
Run Code Online (Sandbox Code Playgroud)

创建全局密钥

final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();
Run Code Online (Sandbox Code Playgroud)

内部构建()

Scaffold(
  backgroundColor: backgroundcolor_cust,
  key: _scaffoldKey,
  endDrawer: Drawer(
    elevation: 16.0,
    child: leftDrawerMenu(context, user_phone, cart_count),
  ),
)
Run Code Online (Sandbox Code Playgroud)


Osa*_*dhu 6

  endDrawer:Drawer(child:Center(child:Columun(   children: <Widget>[
          Text('End Drawer)           ],
      ),))
  
Run Code Online (Sandbox Code Playgroud)