在 ListView 上生成 OnClickEvent 而不实际单击项目

Posted

技术标签:

【中文标题】在 ListView 上生成 OnClickEvent 而不实际单击项目【英文标题】:Generating an OnClickEvent on a ListView without actually clicking an item 【发布时间】:2017-09-09 14:30:18 【问题描述】:

我有一个包含 3 个片段的应用程序,在片段 1 中,您可以从车辆列表中选择车辆。

我希望应用程序在我切换到 Fragment 3 时自动选择同一辆车,而无需按下该 Fragment 列表中的实际车辆项目。

假设我在 Fragment 1 并按下车辆 111。如果我现在切换到 Fragment 3(有自己的车辆列表,填充相同的车辆),我希望应用程序自动为我选择车辆 111 ,所以我可以看到它的参数等等。

换句话说,我想在这个片段 3 中人为地生成一个 onClick 事件并假装我再次点击了那辆巴士。

我该怎么做?

【问题讨论】:

【参考方案1】:

找到该项目的位置并简单地做

listView.getAdapter().getView(position, null, null).performClick();

【讨论】:

我试过了,还是不行。相反,它的工作方式如下:vehicleListView.performItemClick(vehicleListView.getSelectedView(),RealTimeFragment.selectedBus,vehicleListView.getItemIdAtPosition(RealTimeFragment.selectedBus)); 我使用三个静态 int 变量来记住前一个片段中项目的视图、位置和 id。而且,顺便说一句,在您第一次初始化片段之前,它不会以任何方式工作。

以上是关于在 ListView 上生成 OnClickEvent 而不实际单击项目的主要内容,如果未能解决你的问题,请参考以下文章

Puttygen 和 NodeJS 上生成的 RSA 密钥的长度不同

使用 OpenCV 在图像上生成光流

在帖子上生成涂鸦报告

在 Windows 上生成 kerberos 密钥表文件需要啥?

在 Android 设备上生成客户端证书

CollectionView 在 pushViewController 上生成 SIGABRT