Угадайте, что у меня есть TextView, который я хочу обновить в некоторых ситуациях. Я хочу иметь поток, который каждые две или две секунды проверяет обстоятельства и обновляет текст TextView, если это необходимо. Любая идея?Android: периодически обновлять пользовательский интерфейс из потока
0
A
ответ
2
Вы можете использовать обработчик, в вашем GUI:
Handler hnd = new Handler() {
public void handleMessage(Message msg) {
if (msg.what == 101) {
//update textview
}
}
}
проход HND к вашей теме, и в вашей теме сделать:
Message m = new Message();
m.what = 101;
hnd.sendMessage(m);
это предполагает что в вашем отдельном потоке вы выполняете некоторую работу, требующую отчета в поток графического интерфейса пользователя, вы также можете отправлять текстовые сообщения
1
Вы должны использовать обработчик для обновления вида из другого потока. С postDelayed вы можете установить задержку. см документ:
3
я сделать что-то вроде этого:
public class MyClass {
private Handler hUpdate;
private Runnable rUpdate;
public MyClass() { // Constructor
hUpdate = new Handler();
rUpdate = new Runnable() {
// Do your GUI updates here
};
Thread tUpdate = new Thread() {
public void run() {
while(true) {
hUpdate.post(rUpdate);
sleep(500);
}
}
}
tUpdate.start();
}
}
Смежные вопросы
- 1. Android: обновить пользовательский интерфейс из потока
- 2. Обновить пользовательский интерфейс из потока
- 3. Обновить пользовательский интерфейс из потока в WinRT
- 4. Android: что означает «не разрешено обновлять пользовательский интерфейс из нити»?
- 5. Как обновить пользовательский интерфейс из потока?
- 6. Периодически отбирайте данные из потока Bluetooth Android
- 7. Как обновить пользовательский интерфейс из потока
- 8. Как обновить пользовательский интерфейс из другого потока в Android?
- 9. Вызов TextView.setText() периодически заставляет пользовательский интерфейс дрожать
- 10. Периодически обновлять метку wpf
- 11. Android, как обновлять список просмотров периодически
- 12. Как периодически обновлять php?
- 13. Периодически обновлять веб-страницу
- 14. Как периодически обновлять содержимое портлета?
- 15. периодически обновлять время VM
- 16. Периодически обновлять TextView в приложении для Android
- 17. Фоновая задача иногда может обновлять пользовательский интерфейс?
- 18. Периодически обновлять и отображать значение из Flask
- 19. периодически обновлять сервер из приложения J2ME
- 20. Периодически обновлять таблицу в SSIS
- 21. Как я могу эффективно обновлять пользовательский интерфейс из метода async?
- 22. WatchKit, следует ли обновлять пользовательский интерфейс из ExtensionDelegate?
- 23. Как периодически обновлять текстовое поле?
- 24. Периодически обновлять ярлык в Tkinter
- 25. Периодически обновлять asp-элементы управления
- 26. Как обновить пользовательский интерфейс от не-UI-потока в android?
- 27. Имейте Django периодически обновлять данные
- 28. google maps - периодически обновлять маркеры
- 29. Периодически обновлять blockerList.json с сервера
- 30. Динамический пользовательский интерфейс Android
Поток может быть излишним, если нет какой-то операции блокировки, связанные с ним. Обработчик в сочетании с 'postDelayed (runnable, 2000)' может быть подходящим для ваших нужд. http://developer.android.com/reference/android/os/Handler.html – DeeV