ui使用Handler
时间: 2023-05-31 15:03:42 浏览: 118
Handler的使用
在UI中使用Handler通常是为了更新UI,因为在Android中UI更新必须在主线程中进行,而Handler可以在主线程中处理消息,从而实现UI更新。以下是在UI中使用Handler的示例:
1. 在UI线程中创建Handler:
```java
Handler handler = new Handler();
```
2. 在子线程中发送消息到Handler:
```java
new Thread(new Runnable() {
@Override
public void run() {
// 发送消息到Handler
handler.post(new Runnable() {
@Override
public void run() {
// 在主线程中更新UI
textView.setText("Hello Handler");
}
});
}
}).start();
```
在子线程中使用Handler的方式是通过Handler的post方法将Runnable对象发送到主线程中执行,从而实现在主线程中更新UI。
3. 在Handler中处理消息:
```java
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MSG_UPDATE_UI:
// 更新UI
textView.setText("Hello Handler");
break;
default:
super.handleMessage(msg);
break;
}
}
};
```
在Handler中处理消息的方式是重写handleMessage方法,根据消息的what属性进行处理。在上面的例子中,当消息的what属性为MSG_UPDATE_UI时,就更新UI。可以在子线程中通过handler.sendEmptyMessage(MSG_UPDATE_UI)发送消息到Handler。
阅读全文