Activity class에서 getParent() 호출할경우 null??


Activity A 에서 intent 를 통해 Activity B를 호출해서 B가 화면에 나오는 상황인데요..

이상태에서 getParent()하면 null값이 옵니다.

제가생각한건 A가 올줄알았는데 왜이런지 설명해주실수 있는 분?ㅠ,,

  • 2016년 11월 08일에 작성됨
    안드로이드 개발자요

조회수 82


1 답변


좋아요
1
싫어요
채택취소하기

getParent() 함수는 해당 액티비티가 자식으로 부모 액티비티에 포함된 관계에 있을 때, 의미있는 값을 반환합니다. 설명주신 것처럼 단순히 인텐트를 이용해서 액티비티 A에서 액티비티 B를 호출한 상황이라면 항상 null을 반환합니다.

부모/자식 관계를 형성하는 일반적인 방법은 ActivityGroup을 사용하는 것인데 해당 API는 허니콤에서 Deprecated 되었습니다. 프래그먼트라는 개념이 나오기전 액티비티를 프래그먼트처럼 사용하기 위한 API의 잔재가 아닐까 싶고요.

질문을 다시 해보면 getParent()가 왜 필요한 것인지 확인이 필요합니다. 만일 액티비티 A에 접근하기 위한 것이라면 보통은 액티비티B를 실행할 때 필요한 데이터를 인텐트의 putExtra()로 넘기는 방법을 사용합니다. 코드는 아래 링크를 참고하세요.


  • 자세한 설명 감사합니다. 하나또 배우고갑니다..    개발유유   2016.11.9 10:23     

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close