Intent intent = new Intent();   
  
intent.setClass(Activity1.this, Activity2.class);   
  
startActivity(intent);   
  
Activity1.this.finish();   
切换到另外个activity一定要销毁第一个吗!

解决方案 »

  1.   

    当然不是,android有堆栈机制,如果不强行摧毁的话,第一个Activity保存在堆栈中,你点击返回键的时候就可以回到第一个Activity,这样不是很方便?
    如果不能跳转到第二个,是不是第二个Activity没有在manifast.xml中注册的问题?
      

  2.   

    同一楼
    Activity有四种状态:
    active:Activity在栈的顶端,它是可见的。通常,有焦点的前台Activity用来响应用户的输入。当另一个Activity变成active状态时,这个就会变成paused。
    paused:Activity可见但不拥有焦点,它是暂停的。当最前面的Activity是全透明或非全屏的时候,下面的Activity就会是这个状态,不接受用户的输入事件。
    stopped:Activity不可见,停止了,但仍然留在内存里来保存所有的状态和成员信息。
    inactive:一个曾经被启动过的Activity被杀死时,就变成inactive,会从Activity栈中移除,当它重新显示和再次使用时需要再次启动。
      

  3.   

    第一,切换到另一个Activity,当前Activity不一定非要注销。这一点1L说得很正确。
    第二,一个项目中如果有多个activity,则需要在AndroidManifest.xml中,进行相关的注册。这样才不会导致跳转时找不到类。
      

  4.   

       谢谢各位,我现在又遇到一个问题。
       我有2个activity,一个activity上面只有一个webview。
      

  5.   

    第二个上面有个listview  和几个按钮,   现在我从第一个转换到第二个的代码
    Intent intent = getIntent();
                  intent.setClass(MainActivity.this, UpLoadActivity.class);
                  startActivity(intent);转换成功,没问题。我按了返回键以后他会回到第一个activity,问题就在这,但他返回到第一个activity时候,第一个activity上webview显示的web无法再输入数据。
      

  6.   

    为什么我返回到第一个activity后,第一个activity的上的控件就没有作用了
      

  7.   

    startActivityForResult()
    第一个Activity不用销毁
      

  8.   

    startActivityForResult()可以返回上页,并且保留之前输入的相关信息。在第一个Activity中把调用Activity的方法变为startActivityForResult()。