flutter - PageView内的圆角图像保持比例Flutter
问题描述
我PageView
里面有一个带有图像的列表。我想保持图像比例并为它们设置一个圆角。
通常我在简单列表或单个图像中剪辑图像没有问题。
但在这种情况下,ClipRRect
并没有包裹图像,当我将大小设置为红色时,Container
什么也没发生。
结果 :
代码 :
double maxiHeight = 250;
List<Widget> postList = [];
@override
void initState() {
for(Post p in Model.instance.postList) {
postList.add(post(p));
}
super.initState();
}
@override
Widget build(BuildContext context) {
return Container(
height: maxiHeight,
child: PageView(
controller: PageController(viewportFraction: 0.5),
children: postList
),
);
}
Widget post(Post post) {
return ClipRRect(
borderRadius: BorderRadius.circular(20),
child: Container(
margin: EdgeInsets.only(right: 10),
color: Colors.red,
child: Image.network(post.thumb, height: 50)
)
);
}
我想保持我的图像比例。
我在这里想念什么?
解决方案
使用以下修改后的代码,它应该可以工作:
@override
Widget build(BuildContext context) {
return Center(
child: SizedBox(
height: 500.0,
child: ListView(scrollDirection: Axis.horizontal, children: postList),
),
);
}
Widget post(String uri) {
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 5.0),
child: ClipRRect(
borderRadius: BorderRadius.circular(20),
child: Image.network(uri, fit: BoxFit.fitHeight)
),
);
}
推荐阅读
- javascript - 有没有办法访问我的响应错误消息?
- java - 如何通过maven在tomee应用程序中从源代码和静态负载构建java代理?
- ansible - ansible中的多个OR条件
- javascript - 如何显示最少输入 2 个字符的 Javascript 过滤器结果?
- angular - 找不到名称“列表”?(Ionic - Angular) 使用 ViewChild 时
- linux - 将docker容器内的进程绑定到linux中的特定网络接口
- excel - 如何使用应用程序将我的 Firebase 数据导出到 Excel 工作表中?
- javascript - 如何按最近的特定值对数组进行排序并按最新排序?
- javascript - 如何为表格行创建自定义管道?
- javascript - ReactJS - 导入实用程序函数时出现问题