안드로이드 개발 질문/답변
(글 수 45,052)
다이얼로그 내의 버튼 클릭 시, Intent로 넘어가는 갤러리에서 선택한 이미지로 다이얼로그 안의 이미지뷰를 바꾸고싶은데요..
문제는 이너 클래스의 다이얼로그는 Dialog를 상속 받기 때문에 Activity가 없습니다.ㅠ_ㅠ
이걸 어찌 해결하면 좋을까요~?
짧은 생각으로는.. 다이얼로그(Activity 없음) -> Gallery(Activity) -> 다이얼로그(Activity 없음)
순으로 전개되어야 하지만 다이얼로그는 Activity가 없기 때문에 Main을 거쳐 다이얼로그로 갤러리 이미지 값이 넘어와야 하는데
아래와 같은 에러메세지가 나타납니다.
(왜냐하면 갤러리에서 리턴된 값을 메인 액티비티에 적용시켜보니 작동이 잘 됩니다 하핫..)
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=2, result=-1, data=Intent { dat=content://media/external/images/media/6 }}
해당 Failure delivering result ResultInfo 에러에 대해서 리서치를 해보니..
뷰가 그려질 준비가 되기 전에 선택된 이미지가 로드되면 죽는다해서 스레드로 시간을 좀 벌려봐도 먹히질 않네요 ;;
좋은 방법 없을까요~?
ㅇ
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == dialog.TAKE_GALLERY) {
Uri currImageURI = data.getData();
dialog_image_src = getRealPathFromURI(currImageURI);
dialog.dialog_imv1 = (ImageView) findViewById(R.id.dialog_image1);
Bitmap bm = BitmapFactory.decodeFile(dialog_image_src);
dialog.dialog_imv1.setImageBitmap(bm); //에러는 여기서 일어납니다.ㅠ_ㅠ
}
}
}



Handler 안에서 setImageBitmap()을 해보시는건 어떠실런지 '-'?