【发布时间】:2020-02-29 10:35:54
【问题描述】:
我正在尝试在 RecyclerView 适配器中实现一个切换按钮(收藏夹)
当我点击 ToggleButton 时,它被成功收藏并再次点击取消收藏,但问题是即使重新启动应用程序,我如何才能在本地保存此状态。
这是我的模型类:
int toggled = R.drawable.ic_star_red_24dp;
int untoglled = R.drawable.ic_star_border_black_24dp;
boolean isFavorite = false;
public int getToggled() {
return toggled;
}
public int getUntoglled() {
return untoglled;
}
public void setFavorite(boolean favorite) {
isFavorite = favorite;
}
public boolean isFavorite() {
return isFavorite;
}
这是我的切换按钮 OnClick() 的适配器代码:
holder.favorite.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (newsModel.isFavorite)
newsModel.setFavorite(false);
else
newsModel.setFavorite(true);
notifyItemChanged(position);
}
});
还有这个:
if (newsModel.isFavorite())
holder.favorite.setBackgroundResource(newsModel.getToggled());
else
holder.favorite.setBackgroundResource(newsModel.getUntoglled());
现在,我如何保存状态?
【问题讨论】:
-
您可以将值保存在任何本地数据库(如 SQLite 或 Room)中,并在应用重新启动时检索它。
-
我该怎么做?请提供一些代码
标签: android android-recyclerview android-togglebutton