Измените ImageView через несколько секунд

Я пытаюсь реализовать простое действие, которое позволит пользователю ввести пароль. У меня есть вид сетки с 9 используемыми изображениями и 4 видами изображений, которые будут выбранными изображениями (при нажатии на элемент в виде сетки соответствующее изображение будет заполнено выбранным).

Теперь проблема: я хочу, чтобы 4 просмотра изображений действовали подобно полям с паролями: в течение 1 секунды появляется выбранный элемент, а затем другое изображение ... Я пытался использовать asyncthread, но у меня возникла ошибка:Только оригинальный поток, создавший иерархию представлений, может касаться его представлений Вот мой код:

@Override
protected String doInBackground(ImageView... imageViews) {
    ImageView passField1 = imageViews[0];
    ImageView passField2 = imageViews[1];
    ImageView passField3 = imageViews[2];
    ImageView passField4 = imageViews[3];
    try {
        switch (currentField) {
        case 1:
            passField1.setImageResource(//selected recource on grid view);
            Thread.sleep(1000);
            passField1.setImageResource(R.drawable.e00); //this is a blank image
            break;
        case 2:
            passField2.setImageResource(//selected recource on grid view);
            Thread.sleep(1000);
            passField1.setImageResource(R.drawable.e00);
            break;
        case 3:
            passField3.setImageResource(//selected recource on grid view);
            Thread.sleep(1000);
            passField1.setImageResource(R.drawable.e00);
            break;
        case 4:
            passField4.setImageResource(//selected recource on grid view);
            Thread.sleep(1000);
            passField1.setImageResource(R.drawable.e00);
            break;
        }
    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return null;
}

Ответы на вопрос(2)

Ваш ответ на вопрос