Android中通过其他线程更新主线程UI

Android中是无法通过其他线程来更新主线程的UI的,那么是不是与我们这个文章标题有冲突呢?其实不然,因为我们所说的其他线程是基于UI自身的。

private class NewThread implements Runnable{
@Override
public void run() {
while(!Thread.currentThread().interrupted()){
    view.postInvalidate();
        try {
        Thread.sleep(1000);
        } catch (InterruptedException e) {
        e.printStackTrace();
    }
      }
    }
}

注意这里使用的是View.postInvalidate()方法,而在Handler的例子中我们使用的是Invalidate()方法,下面在主UI线程中启动以上线程。

new Thread(new NewThread()).start();

以上所实现的UI更新跟使用Handler中实现的效果是一样的。

你可能感兴趣的:(android,Android开发,移动开发,笔记,开发笔记,lovely_1133)