У меня есть текстовое представление в моей активности android, и я хочу передать его функции в другой класс java и изменить ее текст. Но это исключает меня. Я прочитал, что мне нужно запустить его в потоке пользовательского интерфейса или отправить в контекстную переменную, но я немного смущен, и я не мог этого сделать. Вот мой код:Передача и установка TextView из другого класса
класс таймера Java
public class CountdownTimer {
static int duration;
static Timer timer;
public static void startTimer(final TextView TVtime) {
duration = 10;
timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
public void run() {
TVtime.setText(setDuration());
}
}, 1000, 1000);
}
private static String setDuration(){
if(duration == 1)
timer.cancel();
return String.valueOf(--duration);
}
}
Android активность:
TVtime = (TextView) findViewById(R.id.textView_displayTime);
CountdownTimer.startTimer(TVtime);
почему-то говорит, что activityContext не метод runOnUiThread – Kickapoo
забыл упомянуть, что. Вы должны отправить его в «Активность». См. Обновленный ответ. – JiTHiN
Я не пробовал, но спасибо в любом случае, я использовал решение обработчика. Знаете ли вы какие-либо преимущества \ недостатки одного над другим? – Kickapoo