因此,我有一个带有recyclerview的片段,它是我的第一个Activity的直接子代。在我的recyclerview行中,我有图像按钮。因此,对于我的第二个活动,我有一个功能,可以从第一个活动的recyclerview更改imagebutton的图像。有人可以帮我吗?

更新:
我的应用程序具有添加卡片功能。因此,在第一个活动中,recyclerview的每一行都有一个单独的图像按钮。当我点击图像按钮时,图像将改变并将其添加到购物车。我也有一个购物车的数据库,以便在添加产品时插入产品的ID。如果我点击recyclerview行,它将调用第二个活动并显示产品。因此,在第二个活动中,我还具有“添加到卡”功能。问题是,当我将产品添加到购物车中的第二个活动中时,我想在我的第一个活动中更新recyclerview以指示它已经添加了。

最佳答案

您需要某种共享状态,片段可以读取该片段,第二个活动可以写入该共享状态。因为我不知道用例是什么,所以建议您在第一个POC实现中使用SharedPreferences

在片段适配器的onBindView中,检查要使用的图像的首选项。它可以是R.whatever.id或指向图像的URI。在第二个活动中,根据您的要求将密钥设置为图像资源。

或者,实际上这可能是更好的解决方案,将引用传递给适配器数据源中的映像。然后,每当您需要更新映像时,将值写入数据源,并通知适配器某些更改。如果您不使用内容提供程序并且未观察到数据源,则将内容重新加载到片段的onResume方法中。

但是要提供更准确的答案,我们需要有关您的用例和现有代码的更多信息。

10-07 19:33
查看更多