Я делаю приложение, в котором я должен показать последовательность изображений: Последовательность является продолжением:Как определить последовательность работоспособных
- Красного
X
должен быть показан в течение 400 миллисекунд - изображение называется «Снимок экрана» должно быть показано в течение 500 миллисекунд
- изображение называется «шума» должно быть показано в течение 50 миллисекунд
- «Noise» изображения исчезают, чтобы освободить место для
EditText
Но результат, который выходит, - это красный X
, показанный на 400 миллисекунд, а затем пустой экран.
Вот код, который я написал:
private void startThread(){
handler.postDelayed(new TaskScreenshot(), 400);
handler.postDelayed(new TaskNoise(), 500);
handler.postDelayed(new TaskEditText(), 100);
}
class TaskScreenshot implements Runnable{
@Override public void run() {
myImageView.setImageResource(R.drawable.googleplaybooks2);
myImageView.getLayoutParams().width = LayoutParams.MATCH_PARENT;
myImageView.getLayoutParams().height = LayoutParams.MATCH_PARENT;
}
}
class TaskNoise implements Runnable{
@Override public void run() {
myImageView.setImageResource(R.drawable.noise);
myImageView.getLayoutParams().width = LayoutParams.MATCH_PARENT;
myImageView.getLayoutParams().height = LayoutParams.MATCH_PARENT;
}
}
class TaskEditText implements Runnable{
@Override public void run() {
myInputFragment.getView().setVisibility(View.VISIBLE);
myImageFragment.getView().setVisibility(View.INVISIBLE);
}
}
Красный X
уже установлен в ImageView
перед началом последовательности.
Есть ли что-то, что я делаю неправильно? Есть Runnable
правильный способ выполнения этой последовательности?
может проверить исполнители http://developer.android.com/reference/java/util/concurrent/Executor.html – Raghunandan
Попробуйте опубликовать следующие отложенные задачи в конце предыдущей задачи. Затем запустите T1 после задержки T2. T2 запускается после задержки T3 и так далее ... – Aubin
Обин, что вы имеете в виду? – DamianFox