개발환경

[안드로이드_코틀린] activity가 아닌 Fragement 클래스에서 백그라운드 작업중 UI 처리.

toogari 2023. 6. 29. 17:04

activity 상속 클래스에서는 runOnUiThread 메소드를 이용하여 activity 와 같은 쓰레드상에서 처리할 수 있어 백그라운드에서도 문제없이 UI에 접근할 수 있다.

그런데 Fragement 상속클래스에서는 runOnUiThread  메소드를 사용할 수 없다. 불가피하게 백그라운드 처리중에 

UI를 처리하려면 Handler(Looper.getMainLooper()).post{} 를 사용하면 된다. ( 뭐 다들 아시겠지만... )

아래 코드 참고.


val timer = kotlin.concurrent.timer(period = 1000) {
    Handler(Looper.getMainLooper()).post{
        // 여기에서 UI 처리하면 됨
    } 
}