Android Tips-- Activity.runOnUiThread
2013-08-31 15:18
351 查看
在开发过程中,发现Handler无处不在,更多的是直接new出一个Handler仅仅是为了在UI线程执行一句代码。
是,Handler很强大,但有那么一些地方根本不必自己去使用Handler,或许有更好的方法呢?如仅仅是子线程更新界面,google的工程师们已经替我们想好了,其实Activity中提供了这么一个方法:
Added in API level 1
Runs the specified action on the UI thread. If the current thread is the UI thread, then the action is executed immediately. If the current thread is not the UI thread, the action is posted to the
event queue of the UI thread.
Parameters
其中的action将会被保证在UI线程去执行.
其实看源码的话,你会发现,这个方法的实现跟你想做的没什么,但是它替你做了,我们又何必重复呢
Handler mHandler = new Handler(); ..... mHandler.post(new Runnable() { public void run() { textView.setText(R.string.success); } });
是,Handler很强大,但有那么一些地方根本不必自己去使用Handler,或许有更好的方法呢?如仅仅是子线程更新界面,google的工程师们已经替我们想好了,其实Activity中提供了这么一个方法:
public final void runOnUiThread (Runnable action)
Added in API level 1Runs the specified action on the UI thread. If the current thread is the UI thread, then the action is executed immediately. If the current thread is not the UI thread, the action is posted to the
event queue of the UI thread.
Parameters
action | the action to run on the UI thread |
---|
其实看源码的话,你会发现,这个方法的实现跟你想做的没什么,但是它替你做了,我们又何必重复呢
/** * Runs the specified action on the UI thread. If the current thread is the UI * thread, then the action is executed immediately. If the current thread is * not the UI thread, the action is posted to the event queue of the UI thread. * * @param action the action to run on the UI thread */ public final void runOnUiThread(Runnable action) { if (Thread.currentThread() != mUiThread) { mHandler.post(action); } else { action.run(); } }
相关文章推荐
- android Activity runOnUiThread() 方法使用
- (转)android Activity runOnUiThread() 方法使用
- Android Activity.runOnUiThread() 和 Handler
- android Activity runOnUiThread() 方法使用
- Android Activity runonUiThread
- android Activity runOnUiThread() 方法使用
- android 更新界面视图 Handler和runOnUiThread
- Android runOnUiThread的使用
- Android中更新UI的两种方法——handler和runOnUiThread()
- Android - Bug: runOnUiThread
- Android 更新UI的两种方法——handler和runOnUiThread()
- Android 更新UI的两种方法——handler和runOnUiThread()
- Android 处理子线程与UI交互的简单方法runOnUiThread
- android 界面更新之runOnUiThread()
- android多线程handler+runOnUithread+view.post+handler.post 2013-
- Android开发中更新UI时runOnUIthread(Runnable)与Handler.post(Runnable)的区别及如何选择
- android Activity类的runOnUiThread
- Android 更新UI的两种方法——handler和runOnUiThread()
- Android 更新UI的两种方法——handler和runOnUiThread(
- android多线程与界面交互以及runOnUiThread简单应用