java - RecyclerView 不更新他的项目的布局

标签 java android kotlin android-recyclerview android-viewpager

我有一个 RecyclerView,其中包含 TextView 作为项目。当我点击一个项目时,它会选择他,并且通常会更改 TextView 的布局。

但是,除非我滚动 RecyclerView,否则 TextView 的布局不会更新。在后面,项目被选中,但在前面,我必须滚动 RecyclerView 才能看到变化。

有关信息,我的 RecyclerView 位于 ViewPager2 中的 fragment 中。

我使用 notifyItemChanged() 并尝试使用 notifyDataSetChanged()。我还在 RecyclerView 和 Parent 的布局上尝试了 requestLayout()invalidate()

编辑 2:

我找到了问题的根源,请参阅此 post退房。

最佳答案

抱歉我的英语不好! Android5.1 or Android6.0 能用吗,我也遇到了同样的问题,终于找到解决方法了

<强>1。在 RecyleView 所在的 Fragment 中添加一个 ListView(你可以将高度或宽度设置为零使其不可见)

<强>2。为 ListView 设置适配器

那么这个fragment中的RecyclerView就可以正确的notifyDataSetChanged(),即使是同一个ViewPager2的其他fragment中的RecyclerView也可以正常工作,我不知道它是如何工作的,但它对我有用,希望它对你也有用

关于java - RecyclerView 不更新他的项目的布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57479136/

相关文章:

布局顶部的 Android 键盘

Kotlin 类似于 Groovy 中的作用域函数(let、also、apply、run)

java - 从 ArrayList 中删除重复的自定义对象

java - 将 Gradle 支持添加到 IntelliJ 项目的最佳方式

java - 跳到 Scala 程序中 for 循环的开头

java - Kotlin split with regex 工作不如预期

kotlin - 如何在 Kotlin 中从列表中随机分组?

java - 如何将浏览器用作 java 的 gui?

android - Android 上的 Jets3t

android - Ionic 3 - 任务 ':app:transformDexArchiveWithExternalLibsDexMergerForDebug' 执行失败