上一篇文章我们使用了SharedPreferences存储复杂的对象,这次我们使用SharedPreferences存储图像资源。原理和上一篇的时一样的。
下来我们看一下具体的操作。
首先我们放一张图片
jing.jpg
然后上代码:
/**
* 保存图像
*/
private void saveImage(){
ByteArrayOutputStream baos=new ByteArrayOutputStream();
BitmapDrawable drawable=(BitmapDrawable) getResources().getDrawable(R.drawable.jing);
drawable.getBitmap().compress(CompressFormat.JPEG, 50, baos);
String image64=new String(Base64.encodeBase64(baos.toByteArray()));
SharedPreferences preferences = getSharedPreferences("base64image",
MODE_PRIVATE);
Editor editor=preferences.edit();
editor.putString("image", image64);
editor.commit();
}
这是保存图像资源到SharedPreferences。还是要借助base64进行编码。
然后我们在来看一下读取资源图片的代码。
private void readImage(){
SharedPreferences preferences = getSharedPreferences("base64image",
MODE_PRIVATE);
String imageBase64=preferences.getString("image", "");
if(imageBase64!=""){
byte [] images=Base64.decodeBase64(imageBase64.getBytes()) ;
ByteArrayInputStream bais=new ByteArrayInputStream(images);
((ImageView) findViewById(R.id.imageView1)).setImageDrawable(Drawable.createFromStream(bais, "base64image"));
}
}
ok,这样我们就完成了图片的读取与保存的过程!
分享到:
相关推荐
6.1、资源的类型及存储方式: 6.2、使用字符串、颜色、尺寸资源: 6.3、数组资源: 6.4、使用Drawable资源:图片资源; StateListDrawable资源; LayerDrawable资源; ShapeDrawable资源; ClipDrawable资源; ...
安卓数据存储:介绍安卓应用中数据的存储和管理方法,包括SQLite数据库、SharedPreferences、文件存储等。 安卓网络编程:讲解如何在安卓应用中进行网络通信,包括HTTP请求、Socket编程、JSON解析等。 安卓多媒体...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6.1、资源的类型及存储方式: 6.2、使用字符串、颜色、尺寸资源: 6.3、数组资源: 6.4、使用Drawable资源:图片资源; StateListDrawable资源; LayerDrawable资源; ShapeDrawable资源; ClipDrawable资源; ...
13 5 图像资源 13 6 其他资源 第14章 其他面试例题 14 1 NDK编程 14 2 传感器 14 3 语音识别技术 14 4 Google地图与GPS 14 5 桌面插件 14 6 输入法开发 14 7 测试驱动开发 14 8 性能优化">下载一个cebx阅读器即可 ...
6.1.1 资源的类型以及存储方式 214 6.1.2 使用资源 216 6.2 使用字符串、颜色、 尺寸资源 217 6.2.1 颜色值的定义 217 6.2.2 定义字符串、颜色、尺寸资源 文件 218 6.2.3 使用字符串、颜色、 尺寸...
6.1.1 资源的类型以及存储方式 214 6.1.2 使用资源 216 6.2 使用字符串、颜色、 尺寸资源 217 6.2.1 颜色值的定义 217 6.2.2 定义字符串、颜色、尺寸资源 文件 218 6.2.3 使用字符串、颜色、 尺寸资源 219 6.3 数组...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...
6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...