Sobes.tech
Junior — Middle

Как да се върнем към основния поток на потребителския интерфейс след изпълнение на фонова операция?

sobes.tech AI

Отговор от AI

В Android, за да се върнете към основния (UI) поток след изпълнение на фонова операция, обикновено се използват класове като Handler, runOnUiThread() или съвременни средства като LiveData, ViewModel и Coroutine с планировчика Dispatchers.Main.

Пример с runOnUiThread():

new Thread(() -> {
    // Фонова операция
    String result = doBackgroundWork();

    // Връщане към UI-потока
    runOnUiThread(() -> {
        // Обновяване на UI
        textView.setText(result);
    });
}).start();

Пример с Kotlin Coroutines:

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