Sobes.tech
Junior — Middle

Jak se vrátit zpět do hlavního toku uživatelského rozhraní po provedení operace na pozadí?

sobes.tech AI

Odpověď od AI

V Androidu, pro návrat na hlavní (UI) vlákno po provedení operace na pozadí se obvykle používají třídy jako Handler, runOnUiThread() nebo moderní prostředky, například LiveData, ViewModel a Coroutine s plánovačem Dispatchers.Main.

Příklad s runOnUiThread():

new Thread(() -> {
    // Operace na pozadí
    String result = doBackgroundWork();

    // Návrat na UI vlákno
    runOnUiThread(() -> {
        // Aktualizace UI
        textView.setText(result);
    });
}).start();

Příklad s Kotlin Coroutines:

GlobalScope.launch(Dispatchers.IO) {
    val result = doBackgroundWork()
    withContext(Dispatchers.Main) {
        textView.setText(result)
    }
}