Chcę, aby mój ImageView wydawał się migać. Dokładniej, w przypadku zdarzenia takiego jak kliknięcie przycisku, chcę, aby ImageView zmieniał src na 1 sekundę, następnie zmieniał z powrotem, potem znowu itd. A następnie powinien się zatrzymać, a ImageView powinien mieć ten sam src co poprzedni. Próbowałem coś zrobić w oparciu o inne pytanie, ale to nie działa ...Android - ustaw "miganie" ImageView
private class MyHandler extends Handler {
public ImageView imgView;
@Override
public void handleMessage(Message msg) {
if (imgView != null) {
switch (msg.what) {
case 0:
imgView.setImageResource(R.drawable.red_img);
break;
case 1:
imgView.setImageResource(R.drawable.white_img);
break;
}
}
super.handleMessage(msg);
}
}
(...)
MyHandler blinker = new MyHandler();
blinker.imgView = imgView;
for (int j = 0; j < 5; j++) {
Message msg = new Message();
if (j % 2 == 0) {
msg.what = 0;
} else {
msg.what = 1;
}
blinker.sendMessageDelayed(msg, j * 300);
}
Czy ktoś wie, w jaki sposób można to zrobić (jeśli można to zrobić). Dzięki!
Przede wszystkim upewnij się, że twój 'imgView' i sn't null –
Po drugie, spróbuj z warunkiem 'j <1000'. 5 iteracji to zbyt krótki okres (1,5 sekundy) –