【发布时间】:2021-06-07 18:21:46
【问题描述】:
我有一个应用程序,其中两个容器彼此相邻/彼此上方,相应地带有 Row()/Column() 小部件。两个容器在它们的盒子装饰参数中都有阴影。如果它们彼此靠近,则顶部/左侧的一个会在另一个上投下阴影。
有没有办法让小部件上不画阴影?
编辑:这是我的意思的一个例子。
我不希望第一个容器具有来自第二个容器的阴影,而是让两个容器都位于阴影之上。
这是此示例的代码:您可以将其复制粘贴到dartpad.dev 以进行快速测试。
import 'package:flutter/material.dart';
final Color darkBlue = Colors.grey[200]!;
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData.light().copyWith(scaffoldBackgroundColor: darkBlue),
debugShowCheckedModeBanner: false,
home: Scaffold(
body: Center(
child: Row(
children: [
SizedBox(width: 20),
Container(
height: 100,
width: 300,
decoration: BoxDecoration(
color: Colors.white,
boxShadow: [BoxShadow(
blurRadius: 20,
color: Colors.black.withOpacity(0.6)
)]
),
),
Container(
height: 100,
width: 300,
decoration: BoxDecoration(
color: Colors.white,
boxShadow: [BoxShadow(
blurRadius: 20,
color: Colors.black
)]
),
),
]
),
),
),
);
}
}
【问题讨论】:
-
你试过从他们的盒子装饰参数中删除阴影吗?
-
@Adnan 但我希望他们有阴影。我希望盒子有阴影,我只是不希望阴影出现在其他容器上。有什么办法可以做到吗?
-
请提供一些代码
-
@Adnan 连续只有 2 个容器,带有一个带有单个盒子阴影的盒子装饰。
-
@Adnan 我已经用一个包含问题代码和屏幕截图的示例更新了问题。
标签: flutter dart dropshadow