admin 管理员组

文章数量: 887021


2024年2月25日发(作者:uart串口通信协议)

安卓handler用法

安卓中的Handler是一种线程间通信的机制,常用于在子线程中更新UI的操作。下面是Handler的常用用法:

1. 定义Handler对象:

Handler handler = new Handler();

2. 子线程中发送消息:

(new Runnable() {

@Override

public void run() {

// 执行耗时操作

// ...

// 发送消息到主线程更新UI

ptyMessage(1);

}

});

3. 主线程中处理消息:

Handler handler = new Handler() {

@Override

public void handleMessage(Message msg) {

if ( == 1) {

// 更新UI操作

// ...

}

}

};

在子线程中,通过post方法将耗时操作放入Runnable中执行,并通过send方法发送消息到主线程。主线程中的Handler通过handleMessage方法接收并处理子线程发送的消息,在该方法中可以更新UI等操作。

除了使用post和send方法发送消息,还可以使用postDelayed方法延迟发送消息,和removeCallbacks方法移除指定的Runnable任务。

需要注意的是,如果在子线程中更新UI,还需要在更新UI的代码周围使用runOnUiThread方法,或者借助Handler在主线程中更新UI,以避免产生主线程和子线程之间的冲突。


本文标签: 方法 消息 线程 发送 主线