Java 如何以编程方式刷新文本视图中的文本?

Java 如何以编程方式刷新文本视图中的文本?,java,android,Java,Android,我有以下计时器: Timer timer = new Timer(); timer.scheduleAtFixedRate(new TimerTask() { @Override public void run() { --mTimer; mTimeLeft.setText(String.valueOf(mTimer)); } }, 0, 1000); 触摸屏幕时,TextView中的文本将发生变化 如何以编程方式刷新文本视图 如果没

我有以下计时器:

Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {

    @Override
    public void run() {
        --mTimer;
        mTimeLeft.setText(String.valueOf(mTimer));
    }

}, 0, 1000);
触摸屏幕时,
TextView
中的文本将发生变化


如何以编程方式刷新
文本视图

如果没有更改,请尝试调用
invalidate
。另外,请确保您是从UI线程调用的,如果不是,则使用
post
方法发送将在UI线程中执行的runnable(您可以在那里更改文本)。

应从主线程更新UI。看看这更接近你想要的东西。

我认为这篇文章会对你有所帮助。
    TextView yourTextView =(TextView)findViewById(R.id.your_text_view_ID);
    yourTextView.setText("your text");
基本上,您希望使用SDK中提供的
处理程序
类。您不需要像其他人建议的那样调用invalidate,因为setText会为您这样做。

希望这有帮助

没有注意到你的帖子,我发了同一篇文章+1对于@Hovanesyan-这个答案可以稍加改进,并说明为什么它是解决方案;否则你可能会被否决。给标记者:stackoverflow.com/faq#礼仪声明“如果你看到错误信息,请投反对票。添加说明错误的评论。提供你自己的更好答案。最重要的是-编辑和改进现有问题和答案!”