`
huangqinqin
  • 浏览: 365747 次
  • 性别: Icon_minigender_2
  • 来自: 福州
社区版块
存档分类
最新评论

Android异步操作UI界面的四种方法(载至网络 )

 
阅读更多
方法1:Handler
子线程调用Handler的sendMessage(message)发送事件。

Handler handler= new Handler() {
      @Override
      public void handleMessage(Message msg) {
             super.handleMessage(msg);
             //操作界面
          textView.setText("zhangkai281");
   }
};

public class MyThread extends Thread {
     public void run() {
​    ​    ​    // 耗时操作
​    ​    ​    ​loadNetWork();
            Message msg = new Message();
            handler.sendMessage(msg);//向Handler发送消息,
      }
}

方法2:AsyncTask

//UI线程中执行
new DownloadImageTask().execute( "www.91dota.com" );

private class LoadTask extends AsyncTask {
protected String doInBackground( String... url ) {
        return loadDataFormNetwork( url[0] );//后台耗时操作
}

protected void onPostExecute( String result ) {
      myText.setText( result ); //得到来自网络的信息刷新页面

}

方法3:View.post(Runnable )

public void onClick( View v ) {
        new Thread( new Runnable() {
                public void run() {
                       // 耗时操作
​    ​    ​    ​    ​    ​      loadNetWork();
​                          myText.( new Runnable() {
                                  myText.setText( 来自网络的信息);
                          });
                 }
        }).start();
}

方法4:Activity.runOnUiThread(Runnable )   与view.post类似

public void onClick( View v ) {
        new Thread( new Runnable() {
                public void run() {
                       // 耗时操作
​    ​    ​    ​    ​    ​      loadNetWork();
​                         Activity.runOnUiThread.( new Runnable() {
                                  myText.setText( 来自网络的信息);
                          });
                 }
        }).start();
}

分享到:
评论

相关推荐

    Android异步刷新UI多种实现方案

    在Android开发中,异步刷新UI是至关重要的,它能够保证用户界面的流畅性,避免因为长时间阻塞主线程导致的ANR(Application Not Responding)错误。本篇将详细介绍Asynctask、Handler+Thread以及TimerTask这三种常见...

    Android 使用AsyncTask异步更新UI界面

    本文将详细探讨如何在Android中使用`AsyncTask`来异步更新UI界面。 ### 一、AsyncTask概述 `AsyncTask`是Android SDK提供的一种轻量级的异步任务处理类,它简化了在后台线程中执行任务并在UI线程中更新结果的过程...

    Android异步处理二:使用AsyncTask异步更新UI界面

    Android异步处理二:使用AsyncTask异步更新UI界面。

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

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

    Android源码——UI界面源码.zip

    8. **异步更新UI**:由于Android的UI线程不能长时间阻塞,所以涉及耗时的操作(如网络请求)应放在后台线程执行。通过Handler、AsyncTask或LiveData等工具,可以安全地在后台线程完成工作并更新UI。 9. **可访问性...

    android 异步操作框架

    **Android异步操作的重要性** 在Android系统中,主线程负责处理UI更新和用户交互,如果在此线程执行耗时操作,会导致应用无响应(ANR:Application Not Responding),严重影响用户体验。因此,开发者需要将网络请求...

    使用Handler实现异步更新UI例子

    在Android应用开发中,UI(用户界面)的更新必须在主线程中进行,因为这是Android系统规定的,以保证用户界面的流畅性。然而,当执行耗时操作如网络请求、数据库操作等时,如果在主线程中进行,将导致应用程序无响应...

    Android异步更新UI的四种方式

    本文将详细介绍四种在Android中异步更新UI的方法。 1. **使用Handler消息传递机制** Handler是Android中处理异步消息的核心组件。它允许你在后台线程发送消息到主线程,并在主线程中处理这些消息。在这个例子中,...

    详解android进行异步更新UI的四种方式

    大家都知道由于性能要求,Android要求只能在UI线程中更新UI,要想在其他线程中更新UI,我大致总结了4种方式,欢迎补充纠正: 使用Handler消息传递机制; 使用AsyncTask异步任务; 使用runOnUiThread(action)方法...

    Android异步加载文字

    本项目“Android异步加载文字”将探讨如何在Android Studio中实现在后台加载文本数据,避免UI卡顿,提高应用响应速度。 首先,我们需要了解Android的多线程模型。Android应用的主要执行线程被称为UI线程,负责处理...

    android 异步操作

    在Android开发中,异步操作是至关重要的,它允许我们执行耗时的操作,如网络请求、数据库查询或大型计算,而不会阻塞用户界面。异步任务的主要目标是避免主线程(UI线程)被长时间占用,从而提高应用的响应性和用户...

    Android异步加载图片例子

    主线程负责处理用户界面交互,而工作线程则用于执行耗时操作,如网络请求和图片解码。异步加载图片就是利用工作线程来下载和处理图片,然后在主线程中更新UI。 一种常见的异步图片加载库是Universal Image Loader ...

    android thread 异步操作

    在Android开发中,线程(Thread)和异步任务(AsyncTask)是两种常见的机制,用于在后台执行耗时操作,以避免阻塞主线程,提高用户体验。主线程,也称为UI线程,负责处理用户交互和更新界面,因此任何长时间运行的...

    android 异步显示View

    在Android开发中,异步加载View是一个常见的需求,特别是在处理大量数据或者网络请求时,为了保证用户界面的流畅性,我们需要将耗时的操作放在后台执行,然后在主线程更新UI。这篇博客“android 异步显示View”可能...

    android异步获取网络图片()

    在Android开发中,异步获取网络图片是一项基本且重要的任务,尤其在构建用户界面时,为了提高用户体验,避免UI线程被阻塞,通常会采用异步加载策略。本话题将深入探讨如何在Android中实现这个功能。 首先,我们要...

    Android奇艺高清UI界面源代码.zip

    《Android奇艺高清UI界面源代码解析》 在Android应用开发中,用户界面(UI)的设计与实现是至关重要的一步,它直接影响到用户的使用体验。本篇将详细解析"Android奇艺高清UI界面源代码.zip"中的核心知识点,帮助...

    Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面

    ### Android异步处理详解:使用Thread+Handler实现非UI线程更新UI界面 #### 概述 Android系统中,每一个应用程序都运行在一个独立的Dalvik虚拟机进程中。当应用程序启动时,系统会创建一个主线程(MainThread),也...

    Android仿支付宝支付界面界面界面

    在Android应用开发中,...开发者需要掌握Android UI设计、网络编程、数据安全等相关技术,才能打造一个高效、安全且用户体验良好的支付界面。在实际开发中,可以根据项目需求进行调整和定制,不断优化以满足用户需求。

    Android异步加载网络图片

    以上就是关于“Android异步加载网络图片”这一主题的主要知识点,理解并掌握这些内容,对于开发出流畅、高效的Android应用至关重要。在实际项目中,开发者可以根据需求选择合适的库或方法,确保图片加载的高效性和...

Global site tag (gtag.js) - Google Analytics