Android 图像未保存在配置文件图片中
这是使用的链接。。。问题是图像未保存。当我选择图片时,它将出现在ImageView中。但当我从此活动以及应用程序中退出时,它未保存…请帮助我 任何帮助都将不胜感激Android 图像未保存在配置文件图片中,android,Android,这是使用的链接。。。问题是图像未保存。当我选择图片时,它将出现在ImageView中。但当我从此活动以及应用程序中退出时,它未保存…请帮助我 任何帮助都将不胜感激 pickImage.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { Intent photoPi
pickImage.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, SELECT_PHOTO);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent) {
super.onActivityResult(requestCode, resultCode, imageReturnedIntent);
switch(requestCode) {
case SELECT_PHOTO:
if(resultCode == RESULT_OK){
try {
final Uri imageUri = imageReturnedIntent.getData();
final InputStream imageStream = getContentResolver().openInputStream(imageUri);
final Bitmap selectedImage = BitmapFactory.decodeStream(imageStream);
imageView.setImageBitmap(selectedImage);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
}
您可以这样做:
SharedPreferences sp;
sp=getSharedPreferences("profilePicture",MODE_PRIVATE);
if(!sp.getString("dp","").equals("")){
byte[] decodedString = Base64.decode(sp.getString("dp", ""), Base64.DEFAULT);
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
imageView.setImageBitmap(decodedByte);
}
ByteArrayOutputStream baos = new ByteArrayOutputStream();
selectedImage.compress(Bitmap.CompressFormat.JPEG, 100, baos); //bm is the bitmap object
byte[] b = baos.toByteArray();
String encodedImage = Base64.encodeToString(b, Base64.DEFAULT);
sp.edit().putString("dp", encodedImage).commit();
这个代码应该可以工作。请试一试。如果它不起作用,我可以给你完整的活动代码。你要做的是,从gallery中拾取图像,并使用位图将图像设置为imageview。当您退出活动时,附加到该活动的所有视图组件也将被销毁。 这里您必须了解的一件事是,您没有保存位图或图像路径以供以后显示,通过查看您的逻辑,可以清楚地表明保存和加载保存的图像丢失了 解决办法是 从库中拾取图像后,将图像路径保存在共享首选项中。尝试从保存的路径加载图像,在将其位图加载到Imageview之前,请确保图像路径有效(即图像存在)
我希望你能做到这一点 您需要SharedReference来保存图像,这样当您再次恢复应用程序/活动时,它会显示图像。您可以发送该代码吗..它可以保存我的图像。我不太了解。请发送完整的活动代码..这样我就可以适当地改进我的代码如果它正常工作,那么您不需要完整的代码,你的代码比我的代码更好、效率更高:):)所有最好的东西当我从厨房选择图像时,自拍图像是水平的。例如,我拍了我的自拍。当我选择它作为个人资料照片时…我的脸是水平的。所以你能帮我在选择时裁剪或其他东西,这样它的外观会更好吗better@Manish我从未使用过裁剪功能。。但网上也有教程。。我找到的一个是。。如果你对我的担忧感到满意的话,我可以请你投票吗?当我给你评分时,它会显示你有15个repu,它会公开显示