从Handler / Runnable启动一个新的Activity

时间:2014-10-14 00:44:03

标签: android multithreading runnable android-handler

我是处理程序和runnables的新手。我的目的是从Activity开始新的Runnable。新活动显示,但只有一秒钟,然后程序一起关闭。我不明白为什么,所以任何帮助都会受到赞赏。

Boolean handlerrun = true;
Intent intent = new Intent(this, newactivity.class);

protected void onResume(){
    super.onResume();
    handler = new Handler();

    final Runnable r = new Runnable()
    {
        public void run() 
        {
            if (somevalue < 0) {
                handlerrun = false;
            }

            if (handlerrun) {
                handler.postDelayed(this, 1);
            }

            if (!handlerrun) {
                startActivity(intent);
            }
        }
    };

    if (handlerrun) {
        handler.postDelayed(r, 1);
    }
    super.onResume();
}

代码在停止runnable方面起作用。我听说你可以使用handler.removeCallbacks()方法,但由于某种原因它不适用于我的代码。因此,我使用boolean handlerrun来阻止Runnable重新启动。活动也出现了,但问题是整个计划刚刚关闭。我知道活动2的代码很好。

0 个答案:

没有答案