从 Flutter 中的 Scaffold AppBar 中删除投影?

Removing the drop shadow from a Scaffold AppBar in Flutter?

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

查看 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'),
      ),
    );
  }

如果您想在不重复代码的情况下去除所有应用栏的阴影,只需在您的应用主题中添加 AppBarTheme 属性 和 elevation: 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.
    )
  ),
);

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

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

看看这个

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

参数 primary、toolbarOpacity、bottomOpacity 和 automaticallyImplyLeading 不能为空。此外,如果指定了高程,则它必须是 non-negative.

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

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

至更多:AppBar constructor