这链接到以前的帖子: 我的布局是这样的:
输入文本(编辑文本)
按钮
输出文本(文本视图)
任务:当用户输入输入并单击按钮时,会出现输出文本。我必须确保在单击按钮后大约 10 秒(以及在输出文本出现后)使输入和输出消失。
现在,我无法在 TextView 上添加“TextWatcher”。最初我尝试在 inputText 上使用 Handler,它可以有一个 TextWatcher。但不知何故,处理程序一直在后台运行,我无法“取消”它。
所以我转而使用计时器。我在按钮 onCick() 方法中使用了一个方法:
onClick(){
...
eraseText();
....
}
public void eraseText(){
TimerTask task = new TimerTask() {
public void run() {
inputText.setText("");
outputText.setText("");
}
};
Timer timer = new Timer();
timer.schedule(task, 1000,10000);
}
10 秒后,我想调用 timer.cancel() (但不知道在哪里!!)如您所见,问题是我收到一个错误,抱怨只有 UI 线程可以更改视图。怎么能做到这一点?
谢谢