【发布时间】:2019-09-21 03:34:21
【问题描述】:
这是我此刻的代码:
ClipRRect(
borderRadius: BorderRadius.circular(11),
child: Container(
decoration: BoxDecoration(
gradient: LinearGradient(
begin: FractionalOffset.bottomLeft,
end: FractionalOffset.topRight,
colors: <Color>[Colors.purple, AppBaseColors.orange],
),
boxShadow: [BoxShadow(color: Colors.yellow)]
),
child: Material(
child: InkWell(
onTap: () {
print("tapped");
},
child: Container(
width: ButtonTheme.of(context).minWidth,
height: ButtonTheme.of(context).height,
child: Center(
child: Text(
"log in",
style: TextStyle(
color: Colors.white, fontWeight: FontWeight.bold),
),
),
),
),
color: Colors.transparent,
),
),
),
我做了什么:
- 在第一个 Container 中添加 boxShadow
- 在第二个Container中添加boxShadow
- 添加另一个 Container,其中 boxShadow 作为 ClipRRect 的父级
- 将 Material 中的 boxShadow 添加为 shadowColor(ofc 不起作用,因为我没有任何类型的阴影)
- 在上面的所有情况下,还添加了 spreadRadius 和 blurRadius,但没有任何改变。
知道我做错了什么吗?
【问题讨论】:
-
我认为材质小部件隐藏了盒子阴影效果我建议删除容器并为材质添加高程或删除材质小部件
-
我不能这样做,或者至少我不知道如何... .此外,如果我要删除第一个容器并在第二个容器上添加 BoxDecoration,我也会告别点击效果,因为。因此,至少就我目前所掌握的知识而言,这对我来说并不是一个解决方案。
-
点击效果由 inkewell 小部件保证,所以我认为您不必担心
标签: android ios dart flutter flutter-layout