Я пытаюсь иметь счетчик (количество секунд и минут) и обновлять его на дисплее каждую секунду.Android: изменение элемента XML по таймеру
У меня есть этот код в onCreate
моего класса, который простирается Activity
:
timeOnCall = (TextView) findViewById(R.id.time);
minutes = seconds = 0;
timeOnCall.setText(minutes + ":" + seconds);
// Implements the timer
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
public void run() {
++seconds;
if (seconds == 60) {
seconds = 0;
++minutes;
}
// Display the new time
timeOnCall.setText(minutes + ":" + seconds);
}
}, 1000, 1000);
К сожалению, я получаю следующее сообщение об ошибке:
android.view.ViewRoot$CalledFromWrongThreadException:
Только оригинальный thread
, который создал иерархию вида можно потрогать его взглядов.
Я не уверен, как это исправить, поскольку оно уже находится в методе onCreate()
. Кто-нибудь знает решение?
Большое спасибо! Очень полезно! – James