Я пытаюсь понять, почему у меня возникает следующая проблема.
У меня есть ImageView, и я устанавливаю для него изображение, затем я устанавливаю для него onClickListener, поэтому, когда вы нажимаете на изображение, оно меняет изображение (на новое изображение) с помощью image01.setImageResource (R.drawable.newImage). После этого я вызываю метод, в котором проверяю условие, и если оно истинно, я снова меняю изображение на изображение по умолчанию.
Но я не вижу изменений, потому что они меняются немедленно. Я также вставляю сон, чтобы сделать его медленнее.
(По умолчанию в коде xml я установил изображение на oldImage)
Хорошо ... может быть, это не ясно .. так что давайте посмотрим КОД:
private void myMethod(){
ImageView image01 = (ImageView) findViewById(R.id.image01);
image01.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//When you click on image it change!
image01.setImageResource(R.drawable.newImage);
checkImg(image01);
}
});
}
private void checkGame(ImageView img){
try{
Thread.sleep(1000);
if(condition)
img.setImageResource(R.drawable.oldImage);
}catch (Exception e) {
e.printStackTrace();
}
}
Я сразу увидел старое изображение. В чем проблема?
Возможно ли, что изменение представления не применяется в myMethod () до тех пор, пока все методы внутри него не прекратятся?
Заранее спасибо