runOnUiThread简单应用
来源:互联网 发布:发音标准的软件 编辑:程序博客网 时间:2024/05/16 12:14
首先runOnUiThread是Activity内部的方法,在运用的时候最好指明当前环境变(Context).
new Thread(new Runnable() {
@Override
public void run() {
System.out.println(Thread.currentThread().getId());
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(RunOnUIThreadActivity.this, "UI操作...", 1000).show();
}
});
}
}).start();
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
new Thread(new Runnable() {
@Override
public void run() {
if(isClose)
return;
if(i!=0)
Toast.makeText(RunOnUIThreadActivity.this, i+"", 1000).show();
i++;
handler.postDelayed(this, 2000);
}
}).start();
}
上面两个其实原理一样,runOnUiThread这个会调用父类中的
public final void runOnUiThread(Runnable action) {
if (Thread.currentThread() != mUiThread) {
mHandler.post(action);
} else {
action.run();
}
}
首先判断是否是UI线程,不是的话就post,如果是的话就正常运行该线程.
只要经过主线程中的Handler.post或者postDelayed处理线程runnable则都可以将其转为UI主线程.再说Handler的机制就是来处理线程与UI通讯的.
new Thread() { @Override public void run() { super.run(); for (File folder : folders) { File[] files = folder.listFiles(); for (File file : files) { if (file.getName().endsWith(".png")) { final Bitmap bitmap = getBitmapFromFile(file); getActivity().runOnUiThread(new Runnable() { @Override public void run() { imageCollectorView.addImage(bitmap); } }); } } } }}.start();
- runOnUiThread简单应用
- runOnUiThread简单应用
- runOnUiThread简单应用
- android多线程与界面交互以及runOnUiThread简单应用
- runOnUiThread简单使用
- Activity.runOnUiThread(Runnable)简单介绍
- runOnUiThread
- runOnUiThread()
- runOnUiThread
- runOnUiThread
- runOnUiThread
- runOnUiThread
- Handler简单分析-runOnUiThread,view.post()
- runOnUiThread-----startAnimation
- runOnUiThread()方法
- runonuithread封装
- Android 处理子线程与UI交互的简单方法runOnUiThread
- 请求图灵的简单方法,子线程方法放到主线程执行 runOnUiThread
- Activity的四种启动模式和onNewIntent()
- 五.管理使用者和设立权限的命令
- 注解初始化控件(XUtils方式)
- 面试算法——排序
- 外观模式
- runOnUiThread简单应用
- 使用 IDEA + Maven + Git 快速开发 Java Web 应用
- Android_Fragment_Fragment详解
- 性感美女就爱玩黑丝情趣诱惑
- 贝叶斯分类
- 让弹出层始终显示在屏幕正中间
- 设计模式
- Theme.AppCompat.Light"等主题不存在的问题
- 2016328