Я начинаю разработку приложений для Android. Я работаю с потоками в android.I читал о runOnUiThread
, которые запускают код на основном пользовательском интерфейсе (если я не ошибаюсь? .).Разница между android runOnUiThread и простой код в java
Мой вопрос в чем разница между нормальным кодом на основном пользовательском интерфейсе и кодом внутри runOnIUThread
.
Пример: 1
class A
{
getDataFromServer(foo);//Code on mainUI
}
Пример: 2
getActivity.runOnUiThread(new Runnable(){
@Override
public void run(){
getDataFromServer(foo);
}
});
Какова разница в обоих example.Please помощь ответ me.Your будет новое обучение для меня.
Если вы хотите обновить пользовательский интерфейс в потоке, отличном от UI, тогда используется 'runOnUiTread()'. –
Если вы не хотите использовать runOnUiThread(), то используйте AsyncTask, у него есть preExecute и postExecute для взаимодействия с пользовательским интерфейсом. –
Что делать, если я обновляю форму пользовательского интерфейса runOnUiThread может кодировать внутри потока, идет к длительному процессу, будет ли он блокировать дальнейшее выполнение (ANR) –