我的应用程序中有片段,它充当链接到其他片段的门户。我实现这个的方法是模拟导航抽屉上的一个点击,它已经处理了切换片段的所有代码。
NavigationDrawerAdapter.ViewHolder v = (NavigationDrawerAdapter.ViewHolder) mDrawerList.findViewHolderForAdapterPosition(i);
v.itemView.performClick();
但是,当我尝试模拟在RecyclerView当前状态下不可见的项目时,我收到错误。我知道这是因为RecyclerView仅在ViewHolders数组中保持可见视图,但我需要能够模拟该数组中不包含的视图的点击。
是的,我知道,我应该重构我的代码,这样我就不会像模拟导航抽屉上的用户点击那样做些蠢事。然而,为了时间的利益,并且理解这个导航抽屉永远不会真正变得非常大,只要除了记忆问题之外没有其他真正的负面警告,我认为它是最好的工作解决方案。我的代码的当前状态。
答案 0 :(得分:2)
RecyclerView
旨在回收视图。如果您需要保留观看次数,请使用ScrollView
与垂直LinearLayout
。
您可以scroll RecyclerView,等待完成然后模拟点击。但无论如何这整件事似乎都错了。
您考虑过NavigationView吗?