Altere o ImageView após alguns segundos
Estou tentando implementar uma atividade simples que permitirá ao usuário inserir uma senha. Eu tenho um gridview com as 9 imagens a serem usadas e as 4 visualizações de imagens que serão as imagens selecionadas (ao clicar no item no gridview, a imagem correspondente será preenchida com a selecionada).
Agora o problema: eu quero que as 4 visualizações de imagens funcionem de maneira semelhante aos campos de senha: por 1 segundo, aparece o item selecionado e depois outra imagem ... Tentei usar o asyncthread, mas obtive um erro:Somente o encadeamento original que criou uma hierarquia de visualizações pode tocar suas visualizações Aqui meu código:
@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;
}