본문 바로가기

LANGUAGES, METHODLOGY/Kotlin

[안드로이드/Kotlin] Activity에서 Fragment의 요소를 제어하자

처음에는 Fragment 제어를 위해 interface를 구현해 listener를 만드는 등 복잡한 절차를 거치려 하고 있었는데,

 

interface를 쓰지 않고 아주 간단하게 Fragment의 요소를 제어할 수 있는 방법을 발견했다. 

 

내가 하고자 했던 일은 Fragment에 구현된 RecyclerView를 refresh하는 것이었는데, 아래 과정을 통해 

 

이를 해결할 수 있었다.

 

 

 

1. Fragment에 refresh를 수행하는 메소드를 추가

 

fun doSomething() {

}

 

2. Activity에서 Fragment를 참조

  

val fragment : Fragment클래스 = supportFragmentManager.findFragmentById(R.id.프래그먼트컨테이너) as Fragment클래스

 

3. 참조한 Fragment 변수를 통해 메소드를 실행

 

fragment.doSomething()

 

 

 

<참조>

 

https://developer.android.com/training/basics/fragments/communicating.html