1)从图库中选择图片,图片视图将随图片更新;
2)对于第一次尝试,它确实有效,我拍摄的照片显示正确。
3)我再次启动图库并选择图片,该应用程序进入空白屏幕,但没有任何反应。
我已经记录了跟踪,第二次,即使已经调用了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