public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// load the layout
setContentView(R.layout.filters);
}
我的研究 ::
但是这一切是什么 -
onCreate(Bundle savedInstanceState)
....为什么那捆绑来了
那里,它是什么super.onCreate(savedInstanceState);
外行术语中的一些解释会有所帮助
答案 0 :(得分:16)
如果将应用程序的状态保存在一个包中(通常是onSaveInstanceState中的非持久性动态数据),如果需要重新创建活动(例如,方向更改),则可以将其传递回onCreate。如果方向发生变化(即将设备从横向模式旋转为纵向模式,反之亦然),则会重新创建活动并再次调用onCreate()方法,这样您就不会丢失此先前信息。如果没有提供数据,savedInstanceState为空。
了解更多信息http://developer.android.com/guide/topics/resources/runtime-changes.html
答案 1 :(得分:10)
Bundle用于保存&恢复您的活动的状态信息。在方向更改或杀死您的应用程序或导致再次调用onCreate()的任何其他方案的情况下,savedInstanceState包可用于重新加载以前的状态信息。 熟悉this article about Activity lifecycle会有所帮助。
答案 2 :(得分:2)
onCreate(Bundle)
是您初始化活动的地方。启动Activity
并且未加载应用程序时,将调用两个onCreate()
方法。
但是对于Activity
的后续启动,将不会调用onCreate()
的应用程序。
答案 3 :(得分:1)
由于重写了onCreate方法,因此super关键字用于调用基类的onCreate方法。我认为
答案 4 :(得分:1)
首先super.onCreate(savedInstanceState);
调用superclass
中的方法
并保存了InstanceState
个活动(如果有任何东西损坏了该活动),因此将其保存在instanceState
中,因此在重新加载该活动之前,它是相同的。
答案 5 :(得分:0)
super用于调用父类的构造函数
super.onCreate(savedInstanceState);
调用超类的onCreate()
方法,而不是构造函数。