我试图创建一个UI,如下面的flutter:
使用Expanded
小部件和它的flex
属性,我创建了背景布局。但我不知道如何在上面创建圆角布局。
我的密码:
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
Expanded(
flex: 1,
child: Container(
color: const Color(0xff32394a),
child: Image.asset('assets/ic_logo_xx.png'),
)
),
Expanded(
flex: 2,
child: Container(
color: Colors.white,
)
),
]
);
}
我试图使用ClipRRect
显示圆角布局,但它没有显示在现有布局的顶部。
使用ClipRRect
更新代码
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
Expanded(
flex: 1,
child: Container(
color: const Color(0xff32394a),
child: Image.asset('assets/ic_logo_xx.png'),
)
),
Expanded(
flex: 1,
child: ClipRRect( //<---here
borderRadius :BorderRadius.circular(10),
child: Container(
height: MediaQuery.of(context).size.height,
width: 600,
decoration: BoxDecoration(
color: Color(0xffF6F6F6),
),
),
),
),
Expanded(
flex: 2,
child: Container(
color: Colors.white,
)
),
]
);
}
结果:
1条答案
按热度按时间2cmtqfgy1#
我们不一定需要
ClipRRect
,我们可以使用Stack,沿着Animated Positioned和Container's BoxDecoration borderRadius属性,用于与您共享的图像类似的应用程序。Stack帮助我们将小部件放置在另一个小部件的顶部,最后一个小部件位于前一个小部件的顶部。然后,我们可以使用Animated Positioned小部件进行定位。
下面是我的
main.dart
文件的代码,它足以得到你想要的结果。