Android 在onCreate内部实例化,而不是在onCreate外部实例化。为什么?
大多数Android代码的示例都像下面的示例2一样完成,为什么这比examaple 1中显示的要好得多 例1Android 在onCreate内部实例化,而不是在onCreate外部实例化。为什么?,android,instantiation,android-lifecycle,Android,Instantiation,Android Lifecycle,大多数Android代码的示例都像下面的示例2一样完成,为什么这比examaple 1中显示的要好得多 例1 class TestActivity extends Activity() { HelperClass helperClass = new HelperClass(); EditText extiText = (EditText) findViewById(R.id.editText1); @Override protected void o
class TestActivity extends Activity() {
HelperClass helperClass = new HelperClass();
EditText extiText = (EditText) findViewById(R.id.editText1);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
}
例2
class TestActivity extends Activity() {
HelperClass helperClass;
EditText editText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
helperClass = new HelperClass();
editText = (EditText) findViewById(R.id.editText1);
}
}
你能行
HelperClass helperClass = new HelperClass();
但你做不到
EditText extiText = (EditText) findViewById(R.id.editText1);
如例1所示
因为当onCreate
in调用setContentView(R.layout.layout)时加载了中的布局文件因为R.id.editText1
是此版面的一部分,所以在加载版面之前,您无法访问它
阅读你能做的事
HelperClass helperClass = new HelperClass();
但你做不到
EditText extiText = (EditText) findViewById(R.id.editText1);
如例1所示
因为当onCreate
in调用setContentView(R.layout.layout)时加载了中的布局文件因为R.id.editText1
是此版面的一部分,所以在加载版面之前,您无法访问它
阅读是的,我忘记了,在加载editText之前必须加载版面文件是的,我忘记了,在加载editText之前必须加载版面文件