Sobes.tech
Назад к вопросам
Junior — Middle
67

Каким образом выполнить возвращение к основному потоку пользовательского интерфейса после выполнения фоновой операции?

Ответ от нейросети

sobes.tech 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.text = result
    }
}