메이쁘

[Android Studio] Fragment Refresh(새로고침) 하는 방법 본문

Technology/Android - Android Studio

[Android Studio] Fragment Refresh(새로고침) 하는 방법

메이쁘 2020. 3. 5. 20:19

 

Simple하게 이 코드를 적용시켜보자.

 

- Kotlin

// Fragment 새로고침
fun refreshFragment(fragment: Fragment, fragmentManager: FragmentManager) {
var ft: FragmentTransaction = fragmentManager.beginTransaction() ft.detach(fragment).attach(fragment).commit()
}

// Fragment 클래스에서 사용 시
refreshFragment(this, getFragmentManager())

 - JAVA

FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.detach(this).attach(this).commit();

 

 

Kotlin과 JAVA 소스 두 개 다 있다.

 

Kotlin은 내가 직접 짠 것이라 공통 함수로 만들었다. (자주 사용할 것 같아서?)

JAVA 코드를 사용하기 위해서는 해당 코드를 놓는 클래스가 Fragment가 되어야 attach(this) this를 넣을 수 있다.

 

이것이 싫으면 Kotlin처럼 별도의 함수를 만들고,

파라미터를 Fragment와 FragmentManager로 두면 가능하다! 

 

이를 응용해서

 

위에서 아래로 쓸어내릴 때 라던지

별도의 버튼을 두던지

해서 이벤트 발생 함수로 저 위의 함수를 사용하면 Fragment도 새로고침이 가능하다는 사실!!

 

 

감사합니다!

 

Comments