Android 在调用finish()之前,必须在onCreate()中运行哪些代码?

Android 在调用finish()之前,必须在onCreate()中运行哪些代码?,android,android-activity,oncreate,activity-finish,Android,Android Activity,Oncreate,Activity Finish,我想对活动的onCreate()中的一个条件进行测试,如果为true,将调用finish()。在调用finish()之前是否必须调用任何代码?(调用finish()后是否必须运行任何代码?) e、 g 您可以在onCreate中自由调用finish(),而无需调用一些额外的方法,例如: protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //REQUIRED

我想对活动的
onCreate()
中的一个条件进行测试,如果为true,将调用
finish()
。在调用finish()之前是否必须调用任何代码?(调用finish()后是否必须运行任何代码?)

e、 g


您可以在onCreate中自由调用
finish()
,而无需调用一些额外的方法,例如:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState); //REQUIRED

    if (isVariable) {
     finish();
    } else {
     setContentView(R.layout.activity_main);
     //code here
    }
}
当您调用finish时,它不会停止执行方法,所以请确保
finish()
行下面没有任何内容

如果要在onCreate中调用finish以节省内存/速度,则不应调用
setContentView

我已经测试过这种方法,效果很好

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState); //REQUIRED

    if (isVariable) {
     finish();
    } else {
     setContentView(R.layout.activity_main);
     //code here
    }
}