Вниз  Android-программирование (1-ые посты)
- 2.03.2014 / 17:53
samodelkin
  Пользователь

samodelkin 
Сейчас: Offline
Странно, первый раз вижу чтобы в простом методе можно было останавливать поток, разве так можно делать, или надо создавать тред?
- 2.03.2014 / 17:55
usb_device
  Пользователь

usb_device 
Сейчас: Offline
aNNiMON, не могу понять почему. Ведь я останавливаю основной поток лишь на некоторое время, потом изменяется TextView. Разве система не успевает обновить экран изза того что много пауз?
- 2.03.2014 / 17:56
samodelkin
  Пользователь

samodelkin 
Сейчас: Offline
usb_device, а пауза происходит?
- 2.03.2014 / 17:59
usb_device
  Пользователь

usb_device 
Сейчас: Offline
samodelkin, я же написал, в моем коде, вместо того что бы цифры виводились одна за другой с интервалом 2секунды, после запуска проходит суммарное время всех пауз, и только после этого выводятся на экран сразу все цифры. То есть кажется, или оно так и есть, система не успевает изменить содержимое экрана, так как снова останавливается весь поток на 2 секунды и так до конца цикла.

Изменено usb_device (2.03 / 18:00) (всего 1 раз)
- 2.03.2014 / 18:01
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Online
usb_device, это стандартное поведение Java. Тут уж ничего не поделаешь, надо использовать многопоточность.
__________________
 let live
- 2.03.2014 / 18:07
usb_device
  Пользователь

usb_device 
Сейчас: Offline
aNNiMON, ага, а если использовать вместо остановки всего потока на время, работу с таймерами\временем\секундомером. Тогда поток будет норм отрисовывать? Кстати какие есть простые методы для создания задержек по времени? типа getMilliseconds (метод придуман чисто для примера)
- 2.03.2014 / 18:11
samodelkin
  Пользователь

samodelkin 
Сейчас: Offline
usb_device, System.currenttimemillis() -получить количество миллисекунд, прошедших с 19** года.
- 2.03.2014 / 18:18
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Online
usb_device, Пост #4935
__________________
 let live
- 2.03.2014 / 18:18
samodelkin
  Пользователь

samodelkin 
Сейчас: Offline
usb_device, вот метод, который будет ждать определенное количество миллисекунд:
void pauseMillis(long millis){
long start=System.currenttimemillis();
while(System.currenttimemillis()<start+millis){}
}
- 2.03.2014 / 18:19
vl@volk
  Пользователь

vl@volk 
Сейчас: Offline
samodelkin, от начала текущих суток
__________________
 знает толк
Наверх  Всего сообщений: 4453
Фильтровать сообщения
Поиск по теме
Файлы топика (184)