如何在 Flutter 中创建带有底部彩色边框的 AppBar?
How to create an AppBar with a bottom coloured border in Flutter?
我想创建一个像这样的应用栏,它有一个底部边框以及可以使用提升来完成的阴影色调。有人可以提供一个示例代码片段来实现这个
可能是这样的
AppBar(
bottom: PreferredSize(
child: Container(
color: Colors.orange,
height: 4.0,
),
preferredSize: Size.fromHeight(4.0)),
)
理想情况下,如果您想要真正可定制的设计,您应该制作自己的应用栏。示例:
class MyAppbar extends StatelessWidget implements PreferredSizeWidget {
final Widget title;
const MyAppbar({Key key, this.title}) : super(key: key);
@override
Widget build(BuildContext context) {
return Material(
elevation: 26.0,
color: Colors.white,
child: Container(
padding: const EdgeInsets.all(10.0),
alignment: Alignment.centerLeft,
decoration: BoxDecoration(
border: Border(
bottom: BorderSide(
color: Colors.deepOrange,
width: 3.0,
style: BorderStyle.solid,
),
),
),
child: title,
),
);
}
final Size preferredSize = const Size.fromHeight(kToolbarHeight);
}
如果你只是想在 AppBar 的底部使用一个小部件,我是这样做的:
appBar: AppBar(
title: Text('Soroush!'),
bottom: PreferredSize(
child: Container(
color: Colors.white,
child: TextFormField(),
),
preferredSize: Size.fromHeight(kToolbarHeight)),
现在 AppBar 中提供了 shadowColor
属性,您可以像这样轻松使用它:
AppBar( shadowColor : Colors.blue )
AppBar(elevation: 1, backgroundColor:Colors.orange,)
你可以使用AppBar的shape
属性来实现:
AppBar(
shape: Border(
bottom: BorderSide(
color: Colors.orange,
width: 4
)
),
elevation: 4,
/* ... */
)
我想创建一个像这样的应用栏,它有一个底部边框以及可以使用提升来完成的阴影色调。有人可以提供一个示例代码片段来实现这个
可能是这样的
AppBar(
bottom: PreferredSize(
child: Container(
color: Colors.orange,
height: 4.0,
),
preferredSize: Size.fromHeight(4.0)),
)
理想情况下,如果您想要真正可定制的设计,您应该制作自己的应用栏。示例:
class MyAppbar extends StatelessWidget implements PreferredSizeWidget {
final Widget title;
const MyAppbar({Key key, this.title}) : super(key: key);
@override
Widget build(BuildContext context) {
return Material(
elevation: 26.0,
color: Colors.white,
child: Container(
padding: const EdgeInsets.all(10.0),
alignment: Alignment.centerLeft,
decoration: BoxDecoration(
border: Border(
bottom: BorderSide(
color: Colors.deepOrange,
width: 3.0,
style: BorderStyle.solid,
),
),
),
child: title,
),
);
}
final Size preferredSize = const Size.fromHeight(kToolbarHeight);
}
如果你只是想在 AppBar 的底部使用一个小部件,我是这样做的:
appBar: AppBar(
title: Text('Soroush!'),
bottom: PreferredSize(
child: Container(
color: Colors.white,
child: TextFormField(),
),
preferredSize: Size.fromHeight(kToolbarHeight)),
现在 AppBar 中提供了 shadowColor
属性,您可以像这样轻松使用它:
AppBar( shadowColor : Colors.blue )
AppBar(elevation: 1, backgroundColor:Colors.orange,)
你可以使用AppBar的shape
属性来实现:
AppBar(
shape: Border(
bottom: BorderSide(
color: Colors.orange,
width: 4
)
),
elevation: 4,
/* ... */
)