일단 제가 만들고 있는 앱의 구조를 설명하자면
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이 뜨는군요..
클릭 이벤트들도 전부 뷰 홀더의 어뎁터 안에서 처리한것들이라 어떻게 해야 할지 모르겠네요
필요한 코드 부분들이 있으면 올려드리겠습니다.