마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

fragment에서 실행하는 QR코드스캐너와 카메라의 onActivityResult 문제

0 추천
일단 제가 만들고 있는 앱의 구조를 설명하자면

MenuActivity 에서 fragment와 viewpager를 이용하여 총 6개의 탭 메뉴를 구현한 상태 입니다.

이 6개의 fragment들을 번호를 붙여 TabFragment1,TabFragment2,.. 라고 한다면 QR코드 스캐너는 Tabfragment1에서 사용하고 카메라 같은 경우엔 TabFragment3에서 커스텀 다이얼로그를 만들어 그 곳에서 사용합니다.

 

문제는 QR코드스캐너의 onActivityResult입니다.

 TabFragment3의 커스텀 다이얼로그에서 앨범에서 사진을 가져오는 작업이든 카메라로 찍은 사진을 가져오는 작업이든 작업을 마치면 TabFragment3안에 있는 onActivityResult로 가게 만들어 놨습니다.

하지만 QR코드 스캐너 같은 경우엔 TabFragment1안의 onActivityResult로는 안가더군요.

그래서 할 수 없이 MenuActivity에서 onActivityResult를 작성하니 잘 작동이 되었습니다.

근데 이번엔 TabFragment3의 다이얼로그에서 카메라를 사용하니 결과값이 MenuActivity로 가버리더니 TabFragment3 안에 있는 onActivityResult는 무시를 해버립니다.

할 수 없이 두 기능 다 MenuActivity에서 해결을 하려고 했지만 커스텀 다이얼로그가 리사이클러뷰 뷰홀더를 통해서 만든 아이템들의 클릭 이벤트를 통해 사용한 것이고 그래서 onActivityResult를 통해 받은 값들을 커스텀 다이얼로그로 넘기자니 NullPointerException이 뜨는군요..

클릭 이벤트들도 전부 뷰 홀더의 어뎁터 안에서 처리한것들이라 어떻게 해야 할지 모르겠네요

 

필요한 코드 부분들이 있으면 올려드리겠습니다.
초보개발자 님이 2019년 12월 16일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...