#java #android #timer #timertask
#java #Android #таймер #временная задача
Вопрос:
Итак, я пытаюсь создать, по сути, «прямую трансляцию», и мой код показан ниже. В принципе, я получил ошибку «Приложение неожиданно остановилось», поэтому я отладил. Когда я отлаживал, он сказал «Timer.class не включено android.jar «. Я знаю, что мой статический метод refreshFeed () работает отлично (тестировал его без таймера), так что этого не может быть. Я чего-то здесь не понимаю? Мы высоко ценим любую помощь!
Timer time = new Timer();
TimerTask refresh = new TimerTask(){
public void run(){
feedEntry.refreshFeed();
}
};
time.scheduleAtFixedRate(refresh, 0, 10000);
Комментарии:
1. какой класс Timer вы используете?
2. Дэвид, я использовал и использую класс Timer из java.util
Ответ №1:
Оба таймера и TimerTask присутствуют в пакете java.util.
Что вам нужно сделать, так это использовать обработчик. Прочитайте об обработчике, если вы новичок в Android. http://developer.android.com/reference/android/os/Handler.html
Handler handler = new Handler();
t = new Timer();
timeTask = new TimerTask() {
public void run() {
handler.post(new Runnable() {
public void run() {
feedEntry.refreshFeed();
}
});
}};
t.scheduleAtFixedRate(timeTask, 0, 1000);
Комментарии:
1. Спасибо, Хеллбой! Сработало как по волшебству! 🙂