Android делает паузу с потоком, но добавляет материал в текстовое представление
У меня есть линейный макет, в котором я размещаю текстовое представление с идентификатором "Out". В моем коде я получаю это textview и вызываю out.append("Некоторая строка здесь");. То, что я хочу сделать, это использовать thread.sleep(1000); подождать одну секунду, а затем сделать еще один добавить. Когда я просто использую цикл for и перебираю его десять раз, он ждет десять секунд, а затем обновляет представление в конце. Как я могу сделать это обновление вид между снами?
пс. Основная причина этого заключается в том, что у меня есть другой поток, работающий с выходным потоком Bluetooth, и я хочу, чтобы он обновлял текстовое представление каждый раз, когда я посылаю байт в arduino, подключенный через модуль bluesmirf. Я могу заставить его отправлять данные, но обновление экрана происходит в конце цикла for. Если я поставлю режим сна в этот цикл, он будет ждать одну секунду, а затем выводит на Arduino никаких проблем. Я просто хочу обновить его, чтобы я мог видеть, где что-то не так, как происходит, без использования журналов.
1 ответ
Может быть, вы можете использовать обработчик пост-задержки
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
public void run() {
//Here is the code you want to run after 1 second
}
}, 1000);
Обработчик не блокирует, но может это поможет
Извините за мой плохой английский, удачи!