(안드로이드)A라는 Activity의 Fragment에서 B라는 Activity의 함수호출하는 방법

조회수 2023회

이미지

MainActivity(B)에 이러한 메소드가 있습니다. 해서 MainActivity 에서 다른 Fragment 화면을 호출하는 용도로 사용하고 있는데요 ContentListActivity(A)에 ContentListFragment 화면이 있는데 B에서 A의 Fragment는 호출이 됩니다. 그런데 ContentListFragment에서 A 의 setFragment 함수를 호출하고자 이미지

로그인화면 보여주기 주석 아래처럼 저렇게 실행을 하고자 하는데 이미지

위와같은 상황이 나옵니다. 해당 사항의 이유는 ContentListFragment의 부모가

ContentListActivity 이기때문에 MainActivity의 setFragment 함수를 호출할 수 업다

즉 ((MainActivity)getActivity()).setFragment(LoginFragment.newInstance ~..

이걸 사용할 수 없다는건데 이에대한 해결책을 모르겠어서 질문드립니다.

장비 업계 프로그래머로 일한지 1년 조금 넘어서 모바일쪽 입문한지 2달밖에 안되었는데 해당 툴을 개발하던 개발자가 중간에 나가고 제가 들어와서 안되어있는 부분을 추가개발 및 앞으로 유지보수해야 하는 그런 상황이라 막막하고 어떻게 해결을 해야할지 몰라 질문드립니다. Otto를 사용하라는 이야기도 있고 startActivityForResult 와 onActivityResult를 혼합해서 쓰라는등의 이야기도 있는데 제 상황에 딱 맞는 예제가 없어서 고초를 겪고 있습니다. 선배님들의 고견 및 조언을 기다립니다.

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 안드로이드의 경우 총 2가지 방식을 사용할 수 있을 듯 합니다.

    하나는 Otto 즉 EventBus라는 라이브러리를 사용하는거죠

    사용법은 http://gun0912.tistory.com/4 여기를 참고하셔도 되고 직접 Github에 가서 보셔도

    될 듯 합니다.

    두번째 방법은 싱글톤을 이용하여 전역으로 사용하면 해결 할 수 있을듯 합니다.

    방법은 http://dreamlog.tistory.com/495 이곳을 참고하면 될 듯 합니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)