我有一个RecyclerView,其中包含TextViews作为项目。当我单击一个项目时,它将选择他,并且通常会更改TextView的布局。
但是,除非我滚动RecyclerView,否则TextView的布局不会更新。在后面选择了该项目,但是在前面,我必须滚动RecyclerView才能看到更改。
有关信息,我的RecyclerView在Fragment中,而在ViewPager2中。
我使用notifyItemChanged()
,并尝试使用notifyDataSetChanged()
。我还尝试过在RecyclerView和Parent的布局上使用requestLayout()
和invalidate()
。
编辑2:
我找到了问题的根源,请查看此post进行检查。
谢谢大家的帮助
答案 0 :(得分:1)
对不起,我英语不好!它可以在Android5.1或Android6.0上运行,还是有同样的问题。最后我找到了解决方法
1。在RECyleView所在的片段中添加一个ListView(您可以将高度或宽度设置为零以使其不可见)
2。将适配器设置为ListView
然后,此片段中的RecyclerView可以正确地通知DataSetChanged(),即使同一ViewPager2的其他片段中的RecyclerView也可以正常工作,我不知道它是如何工作的,但是它对我有用,希望它对您也有用