第二次从图库中选择图像不起作用并显示黑屏
selecting image from gallery for the second time does no work and show a black screen
1) Select 图片库中的图片和图片视图将随图片一起更新;
2)第一次尝试,果然有效,我拍的图显示正常
3) 我再次启动图库,select 图片,应用程序进入黑屏,没有任何反应。
我一直在记录我的跟踪记录,尽管已经调用了 startActivityForResult(),但我什至没有调用 onActivityResult。
以下是相关代码的一些片段:
private ImageView groupImage;
private Uri selectedImage;
groupImage = (ImageView) rootView.findViewById(R.id.groupLogo);
groupImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, RESULT_LOAD_IMG);
}
});
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
try{
if(requestCode == RESULT_LOAD_IMG && resultCode == Activity.RESULT_OK && data!=null){
selectedImage = data.getData();
groupImage.setImageBitmap(MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), selectedImage));
}
}catch (Exception e){
e.getStackTrace();
}
}
这一行有问题:
groupImage = (ImageView) rootView.findViewById(R.id.groupLogo);
在 onActivityResult
函数中您覆盖了先前对 groupImage
的引用,因此在 onClickListener
上未分配给您的 ImageView
1) Select 图片库中的图片和图片视图将随图片一起更新;
2)第一次尝试,果然有效,我拍的图显示正常
3) 我再次启动图库,select 图片,应用程序进入黑屏,没有任何反应。
我一直在记录我的跟踪记录,尽管已经调用了 startActivityForResult(),但我什至没有调用 onActivityResult。
以下是相关代码的一些片段:
private ImageView groupImage;
private Uri selectedImage;
groupImage = (ImageView) rootView.findViewById(R.id.groupLogo);
groupImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, RESULT_LOAD_IMG);
}
});
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
try{
if(requestCode == RESULT_LOAD_IMG && resultCode == Activity.RESULT_OK && data!=null){
selectedImage = data.getData();
groupImage.setImageBitmap(MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), selectedImage));
}
}catch (Exception e){
e.getStackTrace();
}
}
这一行有问题:
groupImage = (ImageView) rootView.findViewById(R.id.groupLogo);
在 onActivityResult
函数中您覆盖了先前对 groupImage
的引用,因此在 onClickListener
上未分配给您的 ImageView