android 线程更新UI怎样写
时间: 2023-07-18 12:12:31 浏览: 85
在 Android 中,UI(用户界面)更新只能在主线程(也称为 UI 线程)中执行。如果在子线程中更新 UI,会抛出异常。下面是一种常见的在子线程中更新 UI 的方法:
1. 首先,创建一个 Handler 对象,这个对象将用来发送消息给主线程。
```
Handler handler = new Handler(Looper.getMainLooper());
```
2. 在子线程中执行耗时操作,然后使用 handler 发送一个消息给主线程,告诉它更新 UI。
```
new Thread(new Runnable() {
@Override
public void run() {
// 执行耗时操作
// ...
// 发送一个消息给主线程
handler.post(new Runnable() {
@Override
public void run() {
// 在主线程中更新 UI
// ...
}
});
}
}).start();
```
在这个例子中,handler.post() 方法用来发送一个消息给主线程。这个消息包含了一个 Runnable 对象,这个对象将在主线程中执行,用来更新 UI。注意,这个方法的参数必须是一个 Runnable 对象。
阅读全文