Я пытаюсь создать таймер обратного отсчета.Я использую объект Timer
, которому присвоен timertask
.У меня есть поле метки с именем mTimerDisplay
, которое является статическим членом класса, который я называю cGlobols
.
В методе run
, который вызывается таймером, можно изменить цвет меткиштраф:
cGlobals.mTimerDisplay.setBackground(
BackgroundFactory.createSolidBackground(0xff0000));
Когда я добавляю следующую строку:
cGlobals.mTimerDisplay.setText("Hi");
, она выдает IllegalStateException
: я посмотрел это вверх и он говорит
Сигналы о том, что метод был вызван в недопустимое или неподходящее время.Другими словами, среда Java или приложение Java не находятся в соответствующем состоянии для запрошенной операции.,
Означает ли это, что я не могу выполнить эту операцию в потоке, но если да, то почему я могу изменитьцвет?Если я не могу сделать это в потоке таймера, есть ли другой способ сделать это?