Android开发模板代码(二)——为ImageView设置图片,退出后能保存ImageView的状态

本文为作者原创,允许转载,不过请在文章开头明显处注明链接和出处!!! 谢谢配合~
作者:stars-one
链接:https://www.cnblogs.com/stars-one/p/8414218.html

本篇大约有1221个字,阅读预计需要1.53分钟


接着之前的那个从图库选择图片,设置到ImageView中去,但是,我发现了一个问题,就是再次进入的时候ImageView是恢复到了默认状态,搜索了资料许久之后,终于是发现了解决方法,使用SharePreference储存数据即可

贴上代码

复制代码
  private void save(String imagePath){
        SharedPreferences.Editor editor = getSharedPreferences("data",MODE_PRIVATE).edit();//获得SHaredPreferences.Editor对象
        editor.putBoolean("imageChange",true);//添加一个名为imageChange的boolean值,数值为true
        editor.putString("imagePath",imagePath);//保存imagePath图片路径
        editor.apply();//提交
    }
    private void load(){
        SharedPreferences preferences = getSharedPreferences("data",MODE_PRIVATE);//获得SharedPreferences的对象
        //括号里的判断是去找imageChange这个对应的数值,若是找不到,则是返回false,找到了的话就是我们上面定义的true,就会执行其中的语句
        if(preferences.getBoolean("imageChange",false)){
            String imagePath = preferences.getString("imagePath","");//取出保存的imagePath,若是找不到,则是返回一个空
            displayImage(imagePath);//调用显示图片方法,为ImageView设置图片
        }

    }
复制代码

使用

在准备为ImageView设置图片之前,将图片路径给保存

load()则是放在onCreateed方法中,在初始化完之后

 

测试:

 逻辑分析

Demo下载

 

posted @   Stars-one  阅读(2837)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示