美文网首页
使用Glide把图片保存到sharedpreferences中

使用Glide把图片保存到sharedpreferences中

作者: 糖糖_2c32 | 来源:发表于2019-05-09 10:31 被阅读0次

    在builde.gradle中添加依赖:

    com.github.bumptech.glide:glide:4.9.
    

    在子线程中添加代码:

    Bitmap bitmap = Glide.with(MainActivity.this)
           .asBitmap()
           .load(url)   //需要下载的图片的地址
           .submit()
           .get();
    

    这样就得到了图片,接下来就是把图片转化为base64格式的字符串了

    //把bitmap转化为base64格式的字符串
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    bitmap.compress(Bitmap.CompressFormat.PNG, 30, out);
    String result = Base64.encodeToString(out.toByteArray(), Base64.DEFAULT);
    

    得到字符串以后,把其存入到sharedPreferences中去

    SharedPreferences sharedPreferences = getSharedPreferences("image", MODE_PRIVATE);
    SharedPreferences.Editor editor = sharedPreferences.edit();
    editor.putString("imageString", result);
    editor.apply();
    

    然后再主线程中,得到sharedPreferences中的base64格式的字符串,并把图片加载进ImageView中。

    SharedPreferences sharedPreferences = getSharedPreferences("image", MODE_PRIVATE);
    String imageString = sharedPreferences.getString("imageString", "");
    byte[] bytes = Base64.decode(result, Base64.DEFAULT);
    Bitmap b = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
    mImageView.setImageBitmap(b);
    

    最后不要忘记再AndroidManifast.xml中添加网络权限

    <uses-permission android:name="android.permission.INTERNET"/>
    

    相关文章

      网友评论

          本文标题:使用Glide把图片保存到sharedpreferences中

          本文链接:https://www.haomeiwen.com/subject/gqvioqtx.html