我正在尝试更改AppBar
的阴影标高颜色,但是找不到任何属性。
我也去了原始的实现,但是找不到改变阴影颜色的任何属性。
AppBar(
title: Image.asset(
"images/toolbar_logo.webp",
width: 80,
height: 50,
),
centerTitle: true,
backgroundColor: white,
),
我无法将AppBar
包装在Material Widget
中。
我知道我可以避免使用应用栏属性并创建一个自定义类,然后将其添加到Scaffold
的正文中,
但是可以使用AppBar
的阴影颜色进行更改吗?
答案 0 :(得分:2)
无法更改默认阴影的颜色,但是可以通过将AppBar
包装在Container
小部件内的PreferredSize
中来解决它: / p>
void main() => runApp(App());
class App extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: PreferredSize(
child: Container(
decoration: BoxDecoration(boxShadow: [
BoxShadow(
color: Colors.red,
offset: Offset(0, 2.0),
blurRadius: 4.0,
)
]),
child: AppBar(
elevation: 0.0,
title: Text("Test"),
),
),
preferredSize: Size.fromHeight(kToolbarHeight),
),
body: Container(),
),
);
}
}
答案 1 :(得分:0)
您可以使用Appbar的shadowColor属性对应用栏下方的阴影进行着色。
答案 2 :(得分:0)
接受的答案有点过期。您可以通过两种方式执行此操作:
直接通过 AppBar
属性更改:
void main() => runApp(App());
class App extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(shadowColor: Colors.green),
body: Container(),
),
);
}
}
或者通过使用 Theme
:
void main() => runApp(App());
class App extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(
appBarTheme: AppBarTheme(
shadowColor: Colors.white,
),
),
home: Scaffold(
appBar: AppBar(),
body: Container(),
),
);
}
}