runOnUiThread(runnable)的用法

来源:互联网 发布:播放软件下载app 编辑:程序博客网 时间:2024/05/11 05:40

android 异步显示View获取是每个初学者都会碰到异步显示View的问题(如异步显示网络图片,异步显示Listview只能够数据啦,等等),在这里我简要介绍一下,以下我已经贴上代码了!

  android异步更新界面主要有一下几步:

  步骤一:

  在Acitivity中创建一个线程传入要更新的的界面参数和一个callback

  Java代码

  Thread1 thread1 = new Thread1(al,adapter,this);

  thread1.start();

  Thread1 thread1 = new Thread1(al,adapter,this);

  thread1.start();

  在这个线程中不能直接处理al,adapter,因为android不允许在两个线程中处理UI

  步骤二:

  在Thread1中进行长时间的数据处理(如网络连接等)

  Java代码

  //需要长时间操作的,如网络读取数据图片等

  Thread.sleep(5000);

  Map map = new HashMap();

  map.put("title", "thread");

  al.add(map);

  步骤三:

  在Thread1中创建一个Thread2,使用Thread2将处理后的数据返回到界面中,但是要特别注意的是,前面提到android只接受在activity线程中处理UI,所以需要使用callback函数将Thread2设为activity的线程

  callback方法中就一条语句:

  Java代码

  this.runOnUiThread(runnable);

  this.runOnUiThread(runnable);

  android 异步显示View主要流程就是这样了


原创粉丝点击