Flutter - AppBar底部小部件

6
我想问一下,因为我经常遇到错误,是否可能像这样放置一个Divider()小部件:
AppBar(
  bottom: Divider()
)

如果可以的话,有人能向我展示如何实现这一点吗?
3个回答

9

试试这个……

bottom: PreferredSize(
      child: Container(
         color: Colors.orange,
         height: 4.0,
      ),
      preferredSize: Size.fromHeight(4.0)),

4
如果您阅读底部(bottom)文档,它必须实现PreferredSizeWidget,并且Divider没有实现它。
但是,您可以创建自己的版本并在那里使用它。
class MyDivider extends Divider implements PreferredSizeWidget {
  MyDivider({
    Key key,
    height = 16.0,
    indent = 0.0,
    color,
  })  : assert(height >= 0.0),
        super(
          key: key,
          height: height,
          indent: indent,
          color: color,
        ) {
    preferredSize = Size(double.infinity, height);
  }

  @override
  Size preferredSize;
}

你能告诉我哪里出了问题吗?如果我这样写 AppBar(title: Text("Title"), bottom: MyDivider(color: red) ),我可以在我的工具栏底部看到一条一像素的红线。 - chemamolins
也许我会再试一次。 - user9047282

1

是的,你可以在AppBar底部添加Divider()

bottom: const PreferredSize(
  preferredSize: Size.fromHeight(1),
  child: Divider(height: 1),
)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接