什么是android中的OnCreate方法
Posted
技术标签:
【中文标题】什么是android中的OnCreate方法【英文标题】:What is a OnCreate method in android 【发布时间】:2013-11-01 13:39:45 【问题描述】:我是 android 新手,试图了解以下方法的作用
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
// load the layout
setContentView(R.layout.filters);
我的研究 ::
onCreate 用于启动活动 super用于调用父类构造函数 setContentView 用于设置xml但这一切是什么 -
onCreate(Bundle savedInstanceState)
.... 为什么那个捆绑包来了
那里,是什么
那是什么super.onCreate(savedInstanceState);
一些通俗的解释会很有帮助
【问题讨论】:
您可以在文档中找到所有这些答案。 ActivityActivities explained with examples 【参考方案1】:如果您将应用程序的状态保存在包中(通常是 onSaveInstanceState 中的非持久动态数据),如果需要重新创建活动(例如,方向更改),可以将其传递回 onCreate。如果方向发生变化(即将您的设备从横向模式旋转到纵向,反之亦然),则重新创建活动并再次调用 onCreate() 方法,这样您就不会丢失此先验信息。如果未提供数据,则 savedInstanceState 为 null。
更多信息http://developer.android.com/guide/topics/resources/runtime-changes.html
【讨论】:
【参考方案2】:Bundle 用于保存和恢复活动的状态信息。在诸如方向更改或应用程序终止或任何其他导致再次调用 onCreate() 的情况下,savedInstanceState 包可用于重新加载以前的状态信息。 熟悉this article about Activity lifecycle 会有所帮助。
【讨论】:
【参考方案3】:由于重写了onCreate方法,所以使用super关键字调用基类的onCreate方法。我觉得
【讨论】:
【参考方案4】:首先super.onCreate(savedInstanceState);
调用superclass
中的方法
如果有任何东西损坏活动,则保存活动的InstanceState
,因此将其保存在instanceState
中,因此当重新加载活动时,它将与之前相同。
【讨论】:
【参考方案5】:super用于调用父类构造函数
super.onCreate(savedInstanceState);
调用超类的onCreate()
方法,而不是构造函数。
【讨论】:
以上是关于什么是android中的OnCreate方法的主要内容,如果未能解决你的问题,请参考以下文章
Android 11 onCreate() 调用每秒钟都丢失
Android app启动activity并调用onCreate()方法时都默默地干了什么?
android Service oncreate 在UI线程 何时用service,何时用thread
android中的fragment是先执行oncreate还是oncreateview
什么是 onCreate(Bundle savedInstanceState)
Android查缺补漏(View篇)--在 Activity 的 onCreate() 方法中为什么获取 View 的宽和高为0?