nakka soft world !
[안드로이드] Fragment에서 context나 activity를 가져오는 방법 본문
728x90
Fragment. 참 골치 아픈 녀석이다. Fragment는 Activity와는 달리 Context를 상속받지 않는다. 이로 인해서 Fragment내에서 직접적으로 Context 객체를 사용할 수 없다.
보통은 이런 경우에 getContext() or context 를 사용한다. 그런데 간혹 이렇게 하더라도 null이라며 빌드 Error를 띄우곤 한다.
이는 Fragment가 아직 Activity에 Crete되지 않았기 때문에 null Error를 띄우는 것이다.
따라서 Fragment가 액티비티에 추가될 때 호출되어 액티비티를 받아오는 콜백 함수 onAttach를 따로 오버라이딩 해야한다.
클래스에 위와 같이 작성해주면 정상적으로 context를 사용할 수 있게된다.
여기서 activity를 가져 오기 위해서는 아래와 같이 하면된다.
728x90
'프로그래밍언어 > 안드로이드(Android)' 카테고리의 다른 글
[Android] The emulator process for AVD has terminated (0) | 2022.05.17 |
---|---|
[안드로이드] startActivity시 Type mismatch: Required: Context, Found: Intent (0) | 2020.09.05 |
[Android] 앱 설치 여부 확인 (0) | 2015.08.09 |
String to Boolean (0) | 2015.05.06 |
[Android] 상단바 없애기 (0) | 2015.03.15 |
Comments