Android编程实现使用handler在子线程中更新UI示例

发布时间 - 2026-01-11 03:25:58    点击率:

本文实例讲述了Android编程实现使用handler在子线程中更新UI。分享给大家供大家参考,具体如下:

MainActivity代码:

package com.example.ui;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
  private TextView textView;
  private Handler handler = new Handler(){
    @Override
    public void handleMessage(Message msg) {
      super.handleMessage(msg);
    }
  };
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    textView = (TextView) findViewById(R.id.textView);
    new Thread(){
      @Override
      public void run() {
        super.run();
        try {
          Thread.sleep(2000);
          handler.post(new Runnable() {
            @Override
            public void run() {
             textView.setText("ok");
            }
          });
        } catch (InterruptedException e) {
          e.printStackTrace();
        }
      }
    }.start();
  }
}

布局文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:paddingBottom="@dimen/activity_vertical_margin"
  android:paddingLeft="@dimen/activity_horizontal_margin"
  android:paddingRight="@dimen/activity_horizontal_margin"
  android:paddingTop="@dimen/activity_vertical_margin"
  tools:context="com.example.ui.MainActivity">
  <TextView
    android:textSize="40sp"
    android:id="@+id/textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Hello World!" />
</RelativeLayout>

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android线程与消息机制用法总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。


# Android  # handler  # 子线程  # 更新UI  # android使用handler ui线程和子线程通讯更新ui示例  # 详解Android中OkHttp3的例子和在子线程更新UI线程的方法  # Android 在子线程中更新UI的几种方法示例  # Android子线程与更新UI问题的深入讲解  # 进阶  # 相关内容  # 感兴趣  # 给大家  # 更多关于  # 解决方法  # 所述  # 程序设计  # 讲述了  # textView  # private  # Override  # handleMessage  # void  # widget  # Bundle 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询  黑客如何通过漏洞一步步攻陷网站服务器?  如何续费美橙建站之星域名及服务?  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  黑客入侵网站服务器的常见手法有哪些?  企业网站制作这些问题要关注  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  如何在Ubuntu系统下快速搭建WordPress个人网站?  Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置  Python面向对象测试方法_mock解析【教程】  如何在VPS电脑上快速搭建网站?  如何有效防御Web建站篡改攻击?  SQL查询语句优化的实用方法总结  如何在宝塔面板中修改默认建站目录?  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  中山网站推广排名,中山信息港登录入口?  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  Laravel如何编写单元测试和功能测试?(PHPUnit示例)  网站制作壁纸教程视频,电脑壁纸网站?  Laravel如何使用查询构建器?(Query Builder高级用法)  html5audio标签播放结束怎么触发事件_onended回调方法【教程】  详解jQuery停止动画——stop()方法的使用  JS经典正则表达式笔试题汇总  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives  智能起名网站制作软件有哪些,制作logo的软件?  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  高性能网站服务器部署指南:稳定运行与安全配置优化方案  HTML 中如何正确使用模板变量为元素的 name 属性赋值  Laravel如何使用Telescope进行调试?(安装和使用教程)  Laravel如何使用withoutEvents方法临时禁用模型事件  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程  javascript中的数组方法有哪些_如何利用数组方法简化数据处理  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  Laravel如何使用Blade组件和插槽?(Component代码示例)  Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】  Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧  在线教育网站制作平台,山西立德教育官网?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知  Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言  移动端脚本框架Hammer.js