dart - Flutter ListView 项目点击监听器

我有一个 ListView,我想在单击项目时导航到下一页。

我需要我的 ListView 的点击项的索引。 我知道这可以使用 Controller 来完成。但我找不到任何例子。

最佳答案

为您的 GestureRecognizer(或按钮)添加 onTap 时,您的闭包可以捕获在 itemBuilder 中传递的索引。

例如

 body: ListView.builder(
            itemBuilder: (BuildContext context, int index) {
              return GestureDetector(
                child: Text(index.toString()),
                onTap: () => Scaffold
                    .of(context)
                    .showSnackBar(SnackBar(content: Text(index.toString()))),
              );
            },
            itemCount: 10));

此代码将显示一个 snackbar ,其中包含您点击的 ListItem 的索引。

获得项目索引后,您可以使用此问题的其他答案提供的代码导航到新页面。

https://stackoverflow.com/questions/51415556/

相关文章:

flutter - 在 Flutter 中选择时更改 ListTile 的背景颜色

dart - Flutter 中的文本字段验证

dart - Flutter - 容器中的顶部对齐文本

android - Flutter/Dart 静态变量丢失/不断重新初始化

dart - 如何在 Flutter 中播放自定义声音?

android - 如何在 Flutter App 中处理 onPause/onResume?

dart - 如何使用 image.file 加载图像

dart - 如何格式化定位文本 block 的背景颜色?

http - 如何将查询参数添加到 Dart http 请求中?

regex - 如何在 Dart 中使用正则表达式?