首页 > 解决方案 > App重启后如何获取保存状态?

问题描述

我正在尝试在 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());

现在,我如何保存状态?

标签: androidandroid-recyclerviewandroid-togglebutton

解决方案


我建议您通过以下任一方式持久化模型数据:

  1. 房间持久性库
  2. 安卓领域
  3. SQLite

推荐阅读