在onCreate()中创建RunOnUiThread,它何时运行

时间:2013-12-08 21:35:27

标签: android android-activity lifecycle

刚出现一些奇怪的行为,需要问一下。我的想法是runOnUiThread将在onResume()

之后运行
  @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
            // do stuff..
            // do stuff..
            ...runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    //Drink lemonade
                }
            });
        }
            // do stuff..
            // do stuff..
    }


    @Override
    protected void onStart() {
        super.onStart();
            // do stuff..
    }

    @Override
    protected void onResume() {
        super.onResume();
            // do stuff..
    }

1 个答案:

答案 0 :(得分:4)

来自docs

  

在UI线程上运行指定的操作。如果当前线程是   UI线程,然后立即执行操作。如果是当前的   线程不是UI线程,操作被发布到事件队列   UI线程。

在我看来,您不应该从用户界面runOnUiThread()拨打Thread,因为您已经在用户界面Thread