`
shuai1234
  • 浏览: 971756 次
  • 性别: Icon_minigender_1
  • 来自: 山西
社区版块
存档分类
最新评论

Activity类的runOnUiThread方法

 
阅读更多
[javascript] view plain copy
 
  1. /** 
  2.  * Runs the specified action on the UI thread. If the current thread is the UI 
  3.  * thread, then the action is executed immediately. If the current thread is 
  4.  * not the UI thread, the action is posted to the event queue of the UI thread. 
  5.  * 
  6.  * @param action the action to run on the UI thread 
  7.  */  
  8. public final void runOnUiThread(Runnable action) {  
  9.     if (Thread.currentThread() != mUiThread) {  
  10.         mHandler.post(action);  
  11.     } else {  
  12.         action.run();  
  13.     }  
  14. }  


使用:

 runOnUiThread可以帮助你在线程中执行UI更新操作,我们只需要在线程中写上类似

     youractivity. runOnUiThread(new Runnable() { 
                    @Override 
                        public void run() { 

                           // refresh ui 的操作代码

                        } 
                    });

  这里需要注意的是runOnUiThread是Activity中的方法,在线程中我们需要告诉系统是哪个activity调用,所以前面显示的指明了activity。

分享到:
评论

相关推荐

    android 在非activity类中显示界面

    在非Activity类中显示界面,我们通常采用以下几种方法: 1. 使用`Handler`和`Looper`: 创建一个在主线程中的`Handler`实例,它能接收到子线程发送的消息,并在主线程中更新UI。`Looper`是`Handler`的后台消息循环器...

    xamarin学习笔记A14(安卓AsyncTask和RunOnUiThread)

    在Xamarin.Android环境下,开发者可以利用Java原生的AsyncTask类和Activity的RunOnUiThread()方法来实现这样的功能。下面将详细探讨这两个知识点。 一、AsyncTask类 AsyncTask是Android SDK提供的一种轻量级异步...

    A0404UI线程RunOnUIThread1

    【UI线程与RunOnUIThread方法】 在Android应用开发中,UI线程(也称为主线程)是负责处理用户交互和更新用户界面的特殊线程。由于Android系统的安全机制,所有对UI的操作必须在UI线程中进行,以确保界面更新的同步...

    runOnUiThread 应用 DEMO

    `runOnUiThread` 是`Activity` 类的一个方法,它的签名如下: ```java void runOnUiThread(Runnable action) ``` 这个方法接收一个实现了`Runnable`接口的对象作为参数,`Runnable`接口定义了一个`run`方法,我们...

    Android 在其他线程中更新UI线程的解决方法

    方法一:Activity.runOnUiThread(Runnable )(经验之道: 这个最好用, 凡是要刷新页面的地方,Activity.runOnUiThread( new Runnable() { public void run(){更新UI}});方法二:子线程调用Handler的sendMessage...

    HandlerAndOnUIThreadDemo

    **runOnUiThread** 是Activity类提供的一个便捷方法,用于将一个Runnable对象的run方法运行在UI线程中。如果你在非UI线程中调用此方法,系统会自动切换到UI线程来执行Runnable,这样就可以确保更新UI的操作不会导致...

    Android线程中操作UI界面的方法

    本文将详细介绍四种常见的在Android线程中操作UI界面的方法:使用Handler、View.post(Runnable)、Activity.runOnUiThread(Runnable)以及AsyncTask。 ### 1. 使用Handler **原理**: `Handler`机制是Android中处理...

    Xamarin.Android 非UI线程更新UI

    2. **RunOnUiThread**: Xamarin.Android提供了`Activity.RunOnUiThread`方法,这是一个便捷的方式,允许开发者直接在非UI线程中调用,将传入的Runnable放入主线程执行,从而更新UI。 3. **AsyncTask**: AsyncTask是...

    word源码java-Android-Interview-Gathered:Android-面试-集结

    Activity.runOnUIThread(Runnable) View.post(Runnable) AsyncTask 布局的优化 HierarchyViewer查看Layout层次 标签重用一些比较复杂的组件 标签减少层次,避免嵌套过深的情况发生 使用ViewStub减少隐藏View的绘制 ...

    子线程中更新UI线程的三种方法

    另一种常见的方式是在子线程中创建一个Runnable对象,然后在主线程中调用Activity的runOnUiThread()方法来执行这个Runnable。runOnUiThread()会确保Runnable中的代码在UI线程中运行,所以可以直接进行UI更新。这种...

    3、Android调用Unity插件相关1

    Android可以启动一个新的Activity并通过Intent传递数据,Unity可以通过UnityPlayerActivity类的onNewIntent方法捕获这个Intent。这种方式通常用于打开特定的系统功能,如分享、地图导航等。 4. 文件共享: 如果...

    详解Android UI更新的几种方法

    1. 使用 Activity.runOnUiThread 方法 利用 Activity.runOnUiThread(Runnable) 把更新 UI 的代码创建在 Runnable 中,然后在需要更新 UI 时,把这个 Runnable 对象传给 Activity.runOnUiThread(Runnable)。这样 ...

    两线程之间的关系 activity

    可以通过Handler、runOnUiThread()或使用AsyncTask的onPostExecute()方法来实现。 - 线程安全:在多线程环境下,对共享数据的访问需要确保线程安全,避免数据竞争和死锁。Android提供了synchronized关键字、...

    安卓UI线程和子线程通讯更新UI实例

    通常,我们可以使用Handler、AsyncTask或者RunOnUiThread方法来实现这一目标。 1. **Handler机制**:创建一个Handler对象,将其绑定到UI线程。子线程通过发送Message或者Runnable对象到Handler,Handler会在UI线程...

    异步下载并显示的三种方法

    当新线程执行完毕后,通常会调用Activity的runOnUiThread方法将结果传回主线程进行UI更新。这种方式虽然简单,但需要开发者手动管理线程生命周期,且处理线程间通信相对繁琐。 然后是**AsyncTask**,这是Android...

    Android_Studio_Handler:Android Handler 执行绪教学

    (1)Activity.runOnUiThread(Runnable) (2)View.post(Runnable) (3)View.postDelayed(Runnable,long) (4)Handler (5)AsyncTask在此说明Handler 使用规则####★Outline执行绪间通讯(如:worker执行绪将UI更新程式片段...

    Android的更新ui大合集,统共4种方法

    然后,通过Activity的runOnUiThread()方法,将Runnable提交到主线程执行。这种方式简单直观,适用于简单场景。 4. AsyncTask AsyncTask是Android提供的一种轻量级的异步任务处理类,它简化了后台操作和更新UI的...

    android service toast 01

    1. 使用`runOnUiThread()`:这是Activity提供的方法,可以让代码在主线程中运行。如果你的Service是在Activity中启动的,并且需要显示Toast,可以将Toast的代码包裹在`runOnUiThread()`中。 ```java activity....

    Android开发笔记

    假设你在某个非UI线程中进行了一些耗时操作,如网络请求、数据库操作等,如果需要将结果显示在界面上,则需要使用`runOnUiThread`方法。具体实现如下: ```java new Thread(new Runnable() { @Override public ...

    Android 更新UI的方法汇总

    1、Activity的 runOnUiThread textView = (TextView) findViewById( R.id.tv ); new Thread(new Runnable() { @Override public void run() { ...android Activity runOnUiThread() 方法使用 2、Handler sendEmptyM

Global site tag (gtag.js) - Google Analytics