onCreate(Bundle savedInstanceState, PersistableBundle persistentState)大坑!

来源:互联网 发布:淘宝网手工布鞋 编辑:程序博客网 时间:2024/05/17 08:55

我遇见的情况是使用这个方法之后不显示布局文件的内容,经过一段坎坷路才发现是这个方法的问题。会导致下面根本就不会往下走!

@Override//此方法不会走initData()public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) {    super.onCreate(savedInstanceState, persistentState);    initData();}@Override//此方法可以执行initData()protected void onCreate(@Nullable Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    initData();}

看了一下源码,里面还是调用了原始的onCreate()方法,结合以下两个方法使用

@Overridepublic void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) {    super.onSaveInstanceState(outState, outPersistentState);@Overridepublic void onRestoreInstanceState(Bundle savedInstanceState, PersistableBundle persistentState) {    super.onRestoreInstanceState(savedInstanceState, persistentState);}

最后在配置文件中注册当前Activity的时候加上这个属性,Android:persistableMode=”persistAcrossReboots”就可以给你的Activity存储一些持久化数据。当你的手机有突发情况的时候,可以给你的页面获取到相关数据。

0 0
原创粉丝点击