I am trying to Implement a toggle button (Favorite) in the RecyclerView adapter
As i click on the ToggleButton, it is successfully favorited and clicking again unfavorites as well, BUT the problem is how can I save this state locally even after app is restarted.
Here is my Model Class :
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;
}
Here is my Adapter code for OnClick() of toggle Button :
holder.favorite.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (newsModel.isFavorite)
newsModel.setFavorite(false);
else
newsModel.setFavorite(true);
notifyItemChanged(position);
}
});
ALso this :
if (newsModel.isFavorite())
holder.favorite.setBackgroundResource(newsModel.getToggled());
else
holder.favorite.setBackgroundResource(newsModel.getUntoglled());
Now, How do i save the state ?
I would suggest you to persist the model data by either of the following ways:
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.