Activity class에서 getParent() 호출할경우 null??
조회수 3047회
Activity A 에서 intent 를 통해 Activity B를 호출해서 B가 화면에 나오는 상황인데요..
이상태에서 getParent()하면 null값이 옵니다.
제가생각한건 A가 올줄알았는데 왜이런지 설명해주실수 있는 분?ㅠ,,
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
getParent()
함수는 해당 액티비티가 자식으로 부모 액티비티에 포함된 관계에 있을 때, 의미있는 값을 반환합니다. 설명주신 것처럼 단순히 인텐트를 이용해서 액티비티 A에서 액티비티 B를 호출한 상황이라면 항상 null을 반환합니다.부모/자식 관계를 형성하는 일반적인 방법은 ActivityGroup을 사용하는 것인데 해당 API는 허니콤에서 Deprecated 되었습니다. 프래그먼트라는 개념이 나오기전 액티비티를 프래그먼트처럼 사용하기 위한 API의 잔재가 아닐까 싶고요.
질문을 다시 해보면
getParent()
가 왜 필요한 것인지 확인이 필요합니다. 만일 액티비티 A에 접근하기 위한 것이라면 보통은 액티비티B를 실행할 때 필요한 데이터를 인텐트의putExtra()
로 넘기는 방법을 사용합니다. 코드는 아래 링크를 참고하세요.-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력