我有一个应用程序,其中包含与recyclerViews不同的三个活动。 每个单元格都包含一个灰色的星形按钮。 当用户舔按钮时,它变为黄色。
holder.starBtn.setImageDrawable(ContextCompat.getDrawable(activity,android.R.drawable.btn_star_big_on));
我描述了这个场景:
用户在activity2上,按下三个按钮,它们变为黄色。
用户从activity2移动到activity3并从activity3移回到 活性2。按下的按钮仍为黄色。
问题是如何保持按下按钮的状态?我怎么能让它们变黄。 为什么只有当用户向前移动而不是向后移动时才会保持状态?
我唯一的想法是在sqlite数据库中保存按下按钮的位置,但在android中是否有另一种方法可以保持按下的按钮状态在recyclerView中?
答案 0 :(得分:0)
唯一的方法是将状态存储在数据库中或单例上。在该方法中,您可以将列表数据源存储在可以通过活动更改保留的位置。