【问题标题】:Unwanted action button in flutter appbar颤动应用栏中不需要的操作按钮
【发布时间】:2019-01-05 20:01:51
【问题描述】:

我正在构建一个屏幕,它有一个底部导航栏,我在其中放置了一个汉堡操作按钮和一个浮动按钮,以及一个我想要放置我的应用徽标的应用栏。

即使我没有对应用栏进行任何操作,汉堡图标仍然出现在标题的左侧。

我只想在应用栏中显示标题。

这是我的代码:

   appBar: new AppBar(
    title: new Image.asset('assets/logo/logo-home.png', fit: BoxFit.fitHeight),
    actions: null,
    backgroundColor: Colors.black,
    elevation: 0.0,
  ),


  key: _scaffoldKey,
  floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,
  floatingActionButton: FloatingActionButton(
    child: ImageIcon(new AssetImage("assets/icons/star.png"), color: Colors.black),
    backgroundColor: Colors.white,
    onPressed: scan,
  ),
bottomNavigationBar: BottomAppBar(
    color: Color.black,
    child: new Row(
      mainAxisSize: MainAxisSize.max,
      mainAxisAlignment: MainAxisAlignment.spaceBetween,
      children: <Widget>[
        IconButton(icon: Icon(Icons.menu), color: Colors.white, onPressed: ()=> _scaffoldKey.currentState.openDrawer(),),
      ],
    ),
  ),

【问题讨论】:

  • 我测试了你的代码,标题栏中没有任何汉堡图标。请将整个代码放在这里。
  • 啊,不好意思,其实appbar的背景是白色的,burgher图标也是。我会更新的

标签: android-studio dart flutter


【解决方案1】:

如果脚手架有一个抽屉,并且 appbar 不包含 'leading' 属性(或具有 null 值),Appbar 将在其操作中附加一个菜单图标。

documents中提到过:

如果省略了前导小部件,但 AppBar 位于带有抽屉的 Scaffold 中,则将插入一个按钮以打开抽屉。否则,如果最近的 Navigator 有任何先前的路由,则会插入 BackButton。可以通过将 automaticImplyLeading 设置为 false 来关闭此行为。在这种情况下,一个空前导小部件将导致中间/标题小部件拉伸以开始。

解决方案很简单,只需在您的应用栏中将title 属性替换为leading

  appBar: new AppBar(
        leading: new Image.asset('assets/logo/logo-home.png', fit: BoxFit.fitHeight),
        actions: null,
        backgroundColor: Colors.black,
        elevation: 0.0,
  ),

【讨论】:

  • 感谢这对我有用。也感谢您提供相关的文档。
猜你喜欢
  • 2020-12-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-12
  • 2020-05-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多