适配器中如何写runOnUiThread
时间: 2024-05-13 20:19:43 浏览: 197
A0404UI线程RunOnUIThread1
在 Android 中,runOnUiThread() 方法可以用来在 UI 线程中运行代码,这个方法属于 Activity 类的一部分。
在适配器中要使用 runOnUiThread() 方法,可以通过传递一个 Activity 实例来调用该方法。例如:
```
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
private Activity mActivity;
public MyAdapter(Activity activity) {
mActivity = activity;
}
// ...
@Override
public void onBindViewHolder(final MyAdapter.ViewHolder holder, final int position) {
// 在 UI 线程中更新 UI
mActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
// 更新 UI 代码放在这里
holder.textView.setText("Hello World");
}
});
}
// ...
}
```
在 onBindViewHolder() 方法中,我们创建了一个 Runnable 对象,并将其传递给 mActivity 的 runOnUiThread() 方法。在这个 Runnable 对象的 run() 方法中,我们更新了 ViewHolder 中的 TextView 控件的文本。由于这个方法是在 UI 线程中执行的,所以我们可以安全地更新 UI。
阅读全文