【问题标题】:How to make reyclerview item visible and gone without leaving space behind - Kotlin?如何在不留下空间的情况下使 recyclerview 项目可见并消失 - Kotlin?
【发布时间】:2018-08-05 21:31:47
【问题描述】:

我正在开发一项功能,其中如果从一个 Recyclerview 项目类型中选择性别,则另一个 recyclerview 项目类型应该消失或根据模型对象中的标志设置为可见。目前我使用以下方法:

if (genderSelected != genderPreference) {
      holder.itemView.visibility = View.GONE
} else {
      holder.itemView.visibility = View.VISIBLE
}

这样,该项目正在运行,并且再次可见,在 Gone 上留下空白。

我希望它被暂时删除,没有任何空间。

提前致谢。

【问题讨论】:

  • 你想让recyclerView 项目消失吗?
  • 暂时可以,但如果用户改变性别,那么它应该再次可见
  • 你好@SirajSumra,你能在这里分享你的代码吗?
  • 为什么要在回收站视图中显示/隐藏行。只显示您recyclerview中提供的数据的相关视图?当数据更改时,更新 recyclerview 以显示更新的数据集。过滤数据集,没有视图逻辑。

标签: android user-interface android-recyclerview kotlin visibility


【解决方案1】:

无论您做什么,根据我的理解修改可见性都会留下一个空白区域,因为 recyclerview 本质上是使用一个预构建的列表并由此创建该空间。现在要实现这一点,我要做的是在该性别上单击重新填充 recyclerview,其中包含查询以满足您的需求的新数据。类似于如果您想要一个随着添加的每个字母而更新的搜索栏。您在修改数据而不是视图本身后更新您的 recyclerview。

【讨论】:

  • 我还不能投票,但马克敏锐在 cmets 中将其钉牢。你倒着做。即使删除了视图,该视图仍会在回收站视图的该位置占用空间。更新数据,他们获得新职位,你实现你最疯狂的梦想。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-12-28
  • 2023-02-14
  • 2023-03-03
  • 1970-01-01
  • 2019-03-10
  • 2020-12-15
  • 2018-09-03
相关资源
最近更新 更多