在android上启动新活动不会暂停当前活动?

时间:2014-09-28 14:14:33

标签: java android android-activity

我已从当前活动开始新活动:

 public synchronized boolean onTouchEvent(MotionEvent event) {
     if (event.getAction() == MotionEvent.ACTION_DOWN) {

            .....

            Intent myIntent = new Intent(MainActivity, DetailsActivity.class);
            MainActivity.startActivity(myIntent);

          .......

在当前(旧)活动中我有循环:

      while (running) {

            this.gamePanel.update();
           this.gamePanel.render(canvas);
        }

在启动nnew活动后当前活动仍在运行? 我在内部循环中出错:

  

this.gamePanel.render(画布);

如何在开始新活动后暂停当前活动?

1 个答案:

答案 0 :(得分:0)

您可以添加新课程:

public class newClass implements Runnable {

    public void run() {
         while (running) {
             this.gamePanel.update();
             this.gamePanel.render(canvas);
        }
    }
}

现在你只需要启动这个线程:

Thread t = new Thread(new newClass());
t.start();

如果要在开始新活动之前切换到刚刚设置running = false的新活动。如果Thread当前正在运行while-Loop,他将完成运行它然后停止。 从其他活动回来,你只需要再次启动这个线程