我正在将我的图像转换为字符串并将该字符串存储在sharedpreferences中。然后在其他活动上我想获取该字符串转换回位图并在图像视图中显示它。另外,如果没有从共享首选项中获取任何内容,我想在我的ImageView中将ic_launcher设置为默认图像。
这就是我试图完成任务的方法。
String pic = shared.getString("UserPic","");
Log.i("picstring-verifydetail" , "picstring : "+pic);
if (pic != null && pic != "") {
try {
userpic = ImageHelper.stringToImage(pic);
profilepic.setImageBitmap(userpic);
} catch (IOException e) {
Log.e("picsetting", e.toString());
e.printStackTrace();
}
}
else
{
Bitmap defaultImage = BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher);
profilepic.setImageBitmap(defaultImage);
}
我还存储了一些像name这样的值,并且已成功获取,但是不会从sharedpreferences中获取图像的字符串。它总是会转向其他部分而且我再次收到错误:profilepic.setImageBitmap(defaultImage);
上的“找不到来源”。我搜索了logcat但没有发现错误。
请帮助完成这两项任务。
谢谢&问候,
Sourabh Gupta
答案 0 :(得分:1)
如果您将这些图像存储在assets
或res
个文件夹中。您可以将图像名称存储到SharedPreferences
中,稍后您可以从中获取图像名称,并通过从路径中获取它们来显示在屏幕上。
答案 1 :(得分:1)
我不认为你想要做的是一个好主意。
尝试将图像保存在SD卡或内部存储中,只需将文件路径存储在SharedPreferences
中。