Я не могу показать прямоугольники после некоторой задержки кода. Вот что я делаюThread.sleep in Canvas
DashPathEffect dashPath = new DashPathEffect (new float [] {1,0}, 1);
paint.setPathEffect(dashPath);
paint.setStrokeWidth(300);
final int size =300;
canvas.drawLine (0, размер, 100, размер, краска);
попытка {
Thread.sleep(4000, 0);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
canvas.drawLine (110, размер, 200, размер, краска);
Я не могу заметить задержку между этими двумя прямоугольниками на мобильном экране. Оба появляются одновременно. Все, что я пытаюсь сделать, это рисовать прямоугольники один за другим с некоторой задержкой между ними. Скорее всего, этот код ожидает 4 секунды, а затем отображает оба прямоугольника в одно и то же время. Спасибо.
Следует сказать, что на самом деле это совет Google, чтобы спать на событиях движения касания (всего 20 мс или около того), чтобы справиться с определенными проблемами с тем, насколько дорогими событиями касания могут быть. Связанный поток от разработчиков google group: http://groups.google.com/group/android-developers/browse_thread/thread/39eea4d7f6e6dfca/b50e9be8f47db505?q&pli=1 – Maximus
Хорошо, 99,9% времени, если вы действительно не знаете, что вы делаете и хорошо объясняете это, спать в потоке пользовательского интерфейса - плохая идея. –
Да ... Согласен :) – Maximus