如何使用Android Handler更新UI线程中的TextView?

栏目: Android · 发布时间: 7年前

内容简介:翻译自:https://stackoverflow.com/questions/15685752/how-to-use-an-android-handler-to-update-a-textview-in-the-ui-thread
我想从Android应用程序中的异步任务更新TextView.使用Handler执行此操作的最简单方法是什么?

有一些类似的问题,例如: Android update TextView with Handler ,但这个例子很复杂,似乎没有得到解答.

有几种方法可以更新UI并从UI线程外部修改View等TextView.处理程序只是一种方法.

这是一个允许单个处理程序响应各种类型请求的示例.

在类级别定义一个简单的Handler:

private final static int DO_UPDATE_TEXT = 0;
private final static int DO_THAT = 1;
private final Handler myHandler = new Handler() {
    public void handleMessage(Message msg) {
        final int what = msg.what;
        switch(what) {
        case DO_UPDATE_TEXT: doUpdate(); break;
        case DO_THAT: doThat(); break;
        }
    }
};

更新您的一个函数中的UI,现在位于UI线程上:

private void doUpdate() {
    myTextView.setText("I've been updated.");
}

在异步任务中,向Handler发送消息.有几种方法可以做到这一点.这可能是最简单的:

myHandler.sendEmptyMessage(DO_UPDATE_TEXT);

翻译自:https://stackoverflow.com/questions/15685752/how-to-use-an-android-handler-to-update-a-textview-in-the-ui-thread


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C++ 程序设计语言(特别版)(英文影印版)

C++ 程序设计语言(特别版)(英文影印版)

[美] Bjarne Stroustrup / 高等教育出版社 / 2001-8-1 / 55.00

《C++程序设计语言》(特别版)(影印版)作者是C++的发明人,对C++语言有着全面、深入的理解,因此他强调应将语言作为设计与编程的工具,而不仅仅是语言本身,强调只有对语言功能有了深入了解之后才能真正掌握它。《C++程序设计语言》编写的目的就是帮助读者了解C++是如何支持编程技术的,使读者能从中获得新的理解,从而成为一名优秀的编程人员和设计人员。一起来看看 《C++ 程序设计语言(特别版)(英文影印版)》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码