我是Android新手。我想知道Looper类的功能以及如何使用它。我已经阅读了Android Looper class documentation,但我无法完全理解它。
我在很多地方都看到过它,但无法理解它的目的。谁能通过定义Looper的用途以及在可能的情况下给出一个简单的示例来帮助我?

最佳答案

什么是Looper?

Looper是用于在队列中执行Messages(Runnables)的类。普通线程没有这样的队列,例如简单线程没有任何队列。它执行一次,方法执行完成后,该线程将不会运行另一个Message(Runnable)。

在哪里可以使用Looper类?

如果有人要执行多个消息(Runnables),那么他应该使用Looper类,该类负责在线程中创建队列。
例如,在编写从Internet下载文件的应用程序时,我们可以使用Looper类将要下载的文件放在队列中。

如何运作?

prepare()方法来准备Looper。然后,您可以使用loop()方法在当前线程中创建一个消息循环,现在,您的Looper准备执行队列中的请求,直到退出循环为止。

这是您可以准备Looper的代码。

class LooperThread extends Thread {
      public Handler mHandler;

      @Override
      public void run() {
          Looper.prepare();

          mHandler = new Handler() {
              @Override
              public void handleMessage(Message msg) {
                  // process incoming messages here
              }
          };

          Looper.loop();
      }
  }

关于android - Looper的用途是什么?如何使用它?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7597742/

10-12 01:40