98

在 Flutter 中使用 Scaffold 小部件时,有没有办法去除应用栏(AppBar 类)下的阴影?

4

4 回答 4

230

查看AppBar构造函数,有一个elevation属性可用于设置应用栏的高度,从而设置阴影投射量。将此设置为零将删除阴影:

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('My App Title'),
        elevation: 0,
      ),
      body: const Center(
        child: Text('Hello World'),
      ),
    );
  }

在此处输入图像描述

于 2018-02-27T17:57:04.923 回答
35

我尝试了一些可能对你有帮助的东西

AppBar(
backgroundColor: Colors.transparent,
bottomOpacity: 0.0,
elevation: 0.0,
),

看一下这个

于 2019-11-15T16:50:13.760 回答
20

如果您想在不重复代码的情况下移除所有应用栏的阴影,只需在您的小部件内添加一个AppBarTheme属性 withelevation: 0到您的应用主题 ( ThemeData) MaterialApp

// This code should be located inside your "MyApp" class, or equivalent (in main.dart by default)
return MaterialApp(
  // App Theme:
  theme: ThemeData(
    // ••• ADD THIS: App Bar Theme: •••
    appBarTheme: AppBarTheme(
      elevation: 0, // This removes the shadow from all App Bars.
    )
  ),
);
于 2019-05-30T05:08:23.457 回答
4

要删除appbar下拉阴影,请设置 AppBar 构造函数elevation: 0.0

参数 primary、toolbarOpacitybottomOpacity和 automaticallyImplyLeading 不得为空。此外,如果指定了高程,则它必须为非负数。

如果 backgroundColor elevation、,、shadowColor、brightness、iconTheme、actionIconTheme、textTheme 或 centerTitle 为 null,则将使用它们的 AppBarTheme 值。如果相应的 AppBarTheme 属性为 null,则将使用属性文档中指定的默认值。

appBar: AppBar(
   title: Text('App Title'),
   elevation: 0.0,
   bottomOpacity: 0.0,
),

在此处输入图像描述

更多:AppBar 构造函数

于 2020-09-01T09:48:10.327 回答