不是新建一个activity

解决方案 »

  1.   

    startActivity不是新建一个activity吗?
      

  2.   

    aIntent.setFlags(Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY);
    startActivity(aIntent);
      

  3.   

    /* 新建一个Intent对象 */
    Intent intent = new Intent();
    /* Activity01到Activity02的跳转 */
    intent.setClass(Activity01.this, Activity02.class);
    /* 启动一个新的Activity */
    startActivity(intent);
    /* 关闭当前的Activity */
    Activity01.this.finish();
      

  4.   

    不是跳转到新activity。A跳到B,B调到C,C怎样跳到A,在不关闭B的情况下
      

  5.   

    如果你已经打开的Activity还没有结束掉,当调用startactivity的时候,根据Activity的生命周期首先会resume()
      

  6.   

    我的理解:
    在一个task中的所有Activity构成一个堆栈(history stack)。你不能不退出当前的activity直接跳到堆栈深处的activity。只能直接startActivity.
    除非你退出当前的activity来返回到上一层的activity。堆栈中的Activity 永远不会重排,只会压入或弹出。我觉得Android的程序执行模式和通常的PC是不太一样的。
      

  7.   

    我猜啊:
    startActivity并不一定要新建一个Activity。每个activity有自己的life cycle。
    你调用startActivity时,系统可能是在当前task的堆栈上压入一个该activity的实例。并resume它。反正一个activity不可能在不同的task中都处于活跃状态。
    不知道我的理解对吗?
      

  8.   

    你把Activity的模式设置为singleTask或者singleInstance就OK了 啊