У меня проблема с чем-то, что должно работать как таймер. Я прочитал эту статью в соответствии с использованием «таймера» в Android:
http://developer.android.com/resources/articles/timed-ui-updates.html
У меня есть TextView и ImageView в моем макете. У меня есть AnimationDrawable в этом ImageView. Я переопределил класс AnimationDrawable, потому что я хочу знать, когда моя анимация будет завершена. Тем не менее, исполняемый файл, который я хочу вызвать, когда моя анимация закончится, работает правильно. Но в случае, когда я хочу обновлять TextView каждую секунду, другой исполняемый файл (в коде ниже) вызывает только один раз (я вижу число «1» во время всей анимации).
TextView timeFlow;
int seconds;
private Runnable mUpdateTimeTask = new Runnable() {
public void run() {
seconds++;
timeFlow.setText(String.valueOf(seconds));
}
};
private void startAnimation() {
image = (ImageView) this.findViewById(R.id.image);
recordImage.setBackgroundResource(R.drawable.record_animation);
timeFlow = (TextView) this.findViewById(R.id.time_flow);
timeFlow.setText("...");
image.post(new Runnable() {
@Override
public void run() {
CustomAnimationDrawable currentAnimation = new CustomAnimationDrawable((AnimationDrawable) recordImage.getBackground());
currentAnimation.setOnFinishCallback(runnable);
recordImage.setBackgroundDrawable(currentAnimation);
currentAnimation.start();
handler.removeCallbacks(mUpdateTimeTask);
handler.postDelayed(mUpdateTimeTask, 100);
}
});
}