android - 如何从 GridView 中删除内部滚动?
问题描述
我正在尝试使用一个滚动的 ListView。我希望能够向下滚动并查看每个小部件。目前,我在 GridView 之前有多个小部件。问题在于 GridView 有自己的滚动条。我想要的一个很好的例子类似于 Instagram 个人资料页面。当您在 Instagram 个人资料页面中向下滚动时,每个元素都会向下滚动。没有嵌套的卷轴。
这是我当前的代码:
body: ListView(
children: <Widget>[
...
...
Container(
child: GridView.count(
crossAxisCount: 3,
shrinkWrap: true,
children: List.generate(100, (index) {
return Container(
alignment: Alignment.center,
margin: EdgeInsets.all(3.0),
height: MediaQuery.of(context).size.height,
child: FadeInImage.memoryNetwork(
placeholder: kTransparentImage,
image:'https://picsum.photos/${300}/${300}/',
),
);
}),
),
)
]
)
解决方案
有嵌套滚动小部件,CustomScrollView
它需要 Slivers 来实现您正在寻找的东西。SliverGrid 和 SliverList 是实现目标所需的:
Widget sliverScroll() {
return CustomScrollView(
slivers: <Widget>[
SliverGrid(
delegate: SliverChildBuilderDelegate((context, index) {
return Container();
}, childCount: 9),
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3),
),
SliverList(
delegate: SliverChildBuilderDelegate((context, index) {
return Container();
}, childCount: 6),
),
],
);
}
您可以根据需要自定义,更改订单或它,项目计数等
推荐阅读
- docker - 预期的 Access-Accept 在 FreeRadius 教程中得到了 Access-Reject
- java - 接受 String 类型的任意多行输入并将其存储在变量中
- php - 将 ASCII 表中 0 - 255 的任何字符存储到 MySQL VARCHAR(22) 中?
- javascript - highcharts如何覆盖重置缩放按钮事件
- javascript - Primefaces 条形图禁用所有系列
- openstack - 在 openstack 中创建卷时出错
- java - IntelliJIdea:无法加载类“org.gradle.api.artifacts.result.ComponentArtifactsResult”
- python - 在 Mac 上安装 Django 时出错
- xaml - Avalonia UI 轮播示例
- java - Hibernate从数据库中删除记录?