更改适配器中项目的视图

时间:2021-06-03 14:11:06

标签: android android-recyclerview adapter

我有一个适用于市场的产品适配器。我用从服务器收到的所有产品设置了这个适配器。我还调用服务器以获取该用户最喜欢的产品,因为我想用可见的红心来显示它们,以将它们与其他产品区分开来。我面临这两个问题:

  1. 如果我为所有产品设置了适配器,然后通过迭代列表修改需要激活红心的项目,用户会注意到它,即使只有 1 秒钟。
  2. 有了最喜欢的产品列表,我该如何修改这些收藏的视图?

我相信有一种简单的方法可以做到这一点。

谢谢

2 个答案:

答案 0 :(得分:0)

您需要在网络调用期间操作数据以设置所有收藏或不收藏的产品,一旦设置,只需填充模型。它应该改变视图。

这意味着在设置适配器之前,将所有需要疯狂的服务器调用和操作数据。

我的建议是更改服务器端代码,为每个产品添加一个布尔值 的产品列表是否是用户最喜欢的。这将使您的工作更轻松,并避免进行两次网络调用。

答案 1 :(得分:0)

修改您的服务器代码,添加一个布尔标志来指示某个特定产品是否被收藏,然后使用您拥有的数据填充视图(请在视图可见之前执行此操作,最好在 onBindViewHolder 内)。除非用户故意自己触发操作,否则您不应尝试在视图可见时对其进行操作。

相关问题