Sobes.tech
Junior — Middle

Hogyan térhetünk vissza a felhasználói felület fő folyamatához háttérművelet végrehajtása után?

sobes.tech MI

Válasz az MI-től

Androidon, háttérművelet végrehajtása után általában a Handler, runOnUiThread() vagy modern eszközök, például a LiveData, ViewModel és a Coroutine Dispatchers.Main ütemezőjével való visszatérés történik a fő (UI) szálra.

runOnUiThread() példával:

new Thread(() -> {
    // Háttérművelet
    String result = doBackgroundWork();

    // Visszatérés a UI szálra
    runOnUiThread(() -> {
        // UI frissítése
        textView.setText(result);
    });
}).start();

Kotlin Coroutines példával:

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