我正在尝试为Android学习一些java代码,而我仍然坚持使用此代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.form_layout);
}
就我而言,@ Override告诉我们,我们正在创建一个已经包含在superClass中的方法,在这种情况下应该是Bundle,如果我提供的信息读是正确的。问题是,当我查看Android API时,没有' onCreate'方法出现在Bundle部分。如果有人可以帮助我,我会非常感激,因为我会发疯。
答案 0 :(得分:0)
那是不对的。 @Override引用父类,它是extends关键字之后的类。即
class MyActivity extends AppCompatActivity {......}
在这种情况下,Bundle是传递给onCreate函数的项的类类型。
答案 1 :(得分:0)
放置在@Override annotation
方法之前的onCreate()
意味着您要覆盖其超级类中存在的相同onCreate()
方法。您没有向我们分享您的整个代码,但我假设您的活动正在延长Activity class或AppCompatActivity class。
MainActivity extends Activity {}
或
MainActivity extends AppCompatActivity {}
关于Bundle class,我假设您正在考虑Bundle savedInstanceState
。如果是这样,这意味着您正在使用覆盖方法savedInstanceState
类型为Bundle
的对象作为参数。
关于Bundles,通常用于在各种Android活动之间传递数据。它取决于您,您希望传递的值类型,但是bundle可以包含所有类型的值并将它们传递给新活动。
希望它有所帮助。