【问题标题】:Increase width of AppBar leading property增加 AppBar 前导属性的宽度
【发布时间】:2020-06-22 15:19:03
【问题描述】:

我正在尝试将文本(自定义文本按钮)放入 AppBar 的前导属性中。但是,当文本太长时,文本会变成多行

Scaffold(
      appBar: AppBar(
        centerTitle: true,
        leading: Text('Go back to'),
      ),
    )

如何增加 AppBar 前导属性的宽度?

我不想使用标题,因为它使居中标题成为 PITA。

Scaffold(
      appBar: AppBar(
        centerTitle: true,
        title: Row(
          mainAxisAlignment: MainAxisAlignment.spaceAround,
          children: <Widget>[Text('go back to'), Text('My center title')],
        ),
      ),
    )

有什么方法可以在不弄乱title属性的情况下更改它?

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    您可以使用appBar 中的leadingWidth 属性设置自定义前导宽度:

    Scaffold(
          appBar: AppBar(
            leadingWidth: 400,
            leading: Text('Go back to'),
            centerTitle: true,
            title: Text('Center title'),
          ),
    )
    

    【讨论】:

      【解决方案2】:

      这是一个预定义的小部件。但是,您可以这样做:

        appBar: AppBar(
        automaticallyImplyLeading: false, // Don't show the leading button
        title: Row(
          mainAxisAlignment: MainAxisAlignment.start,
          crossAxisAlignment: CrossAxisAlignment.center,
          children: <Widget>[
            IconButton(
              onPressed: () => Navigator.pop(context),
              icon: Icon(Icons.arrow_back, color: Colors.white),
            ),
            // Your widgets here
          ],
        ),
      ),
      

      automaticallyImplyLeading: true 将隐藏前导按钮,以便您可以添加自己的小部件。祝你好运!

      【讨论】:

      • 我很担心...问题是我使用标题属性...好吧标题...如果我将行放入标题中,那么标题将不会在应用栏中居中。 .. 我将不得不用 Stack 来追逐它,这可能会更容易从头开始制作自定义 appbar
      • 我已经更新了我的问题,看看为什么我不想在标题中使用行
      猜你喜欢
      • 1970-01-01
      • 2016-03-05
      • 2014-05-27
      • 1970-01-01
      • 1970-01-01
      • 2013-05-25
      • 2017-11-20
      • 1970-01-01
      • 2017-08-11
      相关资源
      最近更新 更多