onActivityResult 没有更新 ImageView
onActivityResult is not updating ImageView
我有一张图片来自片段 onActivityresult
中的自定义画廊
正在调用自定义图库
Custom_Gallery custom_gallery=new Custom_Gallery();
custom_gallery.setTargetFragment(this,301);
getFragmentManager().beginTransaction().replace(R.id.FragmentMain,custom_gallery).addToBackStack(null).commit();
将结果从自定义库发送回片段
bundle.putStringArrayList("Media",media);
Intent intent = new Intent();
intent.putExtras(bundle);
getTargetFragment().onActivityResult(getTargetRequestCode(),getActivity().RESULT_OK,intent);
FragmentManager fragmentManager=getFragmentManager();
fragmentManager.popBackStack();
在 onActivityResult
中获取结果
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==301 && resultCode==getActivity().RESULT_OK){
List<String> image=data.getStringArrayListExtra("Media");
Log.d(TAG,"Image "+image.get(0));
String img=image.get(0);
//File uploadedImage = new File(image.get(0));
/*Bitmap myImage=BitmapFactory.decodeFile(image.get(0));
uploadImage.setImageBitmap(myImage);*/
Glide.with(getActivity()).load(img)
.apply(new RequestOptions()
.skipMemoryCache(true)
.error(R.drawable.add_fav)
.dontAnimate()
.diskCacheStrategy(DiskCacheStrategy.NONE))
.into(uploadImage);
uploadButton.setEnabled(true);
functions=new App_Functions(getActivity());
Bitmap bitmap = BitmapFactory.decodeFile(image.get(0));
String Base64Image=functions.Convert_To_Base64(bitmap);
//Log.d(TAG,"Base 64 "+Base64Image);
}
}
这是我从 Fragment 的 onActivityResult
中的自定义图库获取的图像路径
/storage/emulated/0/Download/Media/Images/Ximg1520693707996.jpg
我尝试使用 Bitmap 的 decodefile 方法然后手动设置为 Imageview
但仍然无法正常工作我认为它的 Glide 问题但它甚至没有使用 Bitmap 设置。
Imageview 有 onClicklistener,我想将所选图像设置为 ImageView
android 生态系统的生命周期存在问题。 onResume
在 onActivityResult
之后调用。当在 onActivityResult
获得结果时,我只需要将图像路径保存在 String
中,然后在 ImageView
中的设置路径上使用它 onResume
我有一张图片来自片段 onActivityresult
正在调用自定义图库
Custom_Gallery custom_gallery=new Custom_Gallery();
custom_gallery.setTargetFragment(this,301);
getFragmentManager().beginTransaction().replace(R.id.FragmentMain,custom_gallery).addToBackStack(null).commit();
将结果从自定义库发送回片段
bundle.putStringArrayList("Media",media);
Intent intent = new Intent();
intent.putExtras(bundle);
getTargetFragment().onActivityResult(getTargetRequestCode(),getActivity().RESULT_OK,intent);
FragmentManager fragmentManager=getFragmentManager();
fragmentManager.popBackStack();
在 onActivityResult
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==301 && resultCode==getActivity().RESULT_OK){
List<String> image=data.getStringArrayListExtra("Media");
Log.d(TAG,"Image "+image.get(0));
String img=image.get(0);
//File uploadedImage = new File(image.get(0));
/*Bitmap myImage=BitmapFactory.decodeFile(image.get(0));
uploadImage.setImageBitmap(myImage);*/
Glide.with(getActivity()).load(img)
.apply(new RequestOptions()
.skipMemoryCache(true)
.error(R.drawable.add_fav)
.dontAnimate()
.diskCacheStrategy(DiskCacheStrategy.NONE))
.into(uploadImage);
uploadButton.setEnabled(true);
functions=new App_Functions(getActivity());
Bitmap bitmap = BitmapFactory.decodeFile(image.get(0));
String Base64Image=functions.Convert_To_Base64(bitmap);
//Log.d(TAG,"Base 64 "+Base64Image);
}
}
这是我从 Fragment 的 onActivityResult
/storage/emulated/0/Download/Media/Images/Ximg1520693707996.jpg
我尝试使用 Bitmap 的 decodefile 方法然后手动设置为 Imageview
但仍然无法正常工作我认为它的 Glide 问题但它甚至没有使用 Bitmap 设置。
Imageview 有 onClicklistener,我想将所选图像设置为 ImageView
android 生态系统的生命周期存在问题。 onResume
在 onActivityResult
之后调用。当在 onActivityResult
获得结果时,我只需要将图像路径保存在 String
中,然后在 ImageView
中的设置路径上使用它 onResume