我们可以在没有call stop()方法的情况下销毁活动吗?

问题描述:

在活动生命周期中执行。我们可以在没有call stop()方法的情况下销毁活动吗?

onCreate() 
onDestroy() 

这意味着没有在活动生命周期中调用stop()方法。

怎么可能?

+0

使用'finish'方法来破坏活性。 – Tauqir

您不需要拨打stop()方法。 Android系统会自动通过这些生命周期方法。

但是显然onDestroy()总是在onStop()之后被调用。

如果你想杀死活动只需拨打finish(),它会破坏你的活动。

但是请再次记住onStop()始终称为系统级别,如果您致电finish(),请遵循活动生命周期。

备注:如果系统杀死您的应用程序或活动以利用内存,则无法保证从活动生命周期中调用这些方法。

+0

我相信OP在想,为什么他们会在不调用'onStop()'的情况下观察'onCreate()'和'onDestroy()'被调用。 – GSerg

使用finish();销毁活动。

public class ExampleActivity extends Activity { 
     @Override 
     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.empty); 
      System.out.println("in onCreate"); 
      finish(); 
    } 
    @Override 
    public void onDestroy() { 
     // TODO Auto-generated method stub 
     super.onDestroy(); 
     System.out.println("in onDestroy"); 
    } 
    } 

当活动运行然后调用onCreate()方法和的onDestroy() 方法