【问题标题】:How to avoide call onCreate() when app goes to splitView应用程序转到 splitView 时如何避免调用 onCreate()
【发布时间】:2019-02-05 07:18:08
【问题描述】:

在我的应用程序中有一个活动 (MainActivity) 和四个片段。当我的应用程序进入 splitView (多窗口模式)时, onCreate() 方法在 MainActivity 中被调用,这就是当我进入多窗口模式时第一个片段被加载的原因。当应用程序进入 splitView 时如何停止调用 onCreate() 方法。

【问题讨论】:

  • 这可能会有所帮助:stackoverflow.com/questions/42718275/…
  • 谢谢。我得到问题的解决方案。我在 manifastFile 中添加 android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"
  • 我可以将其发布为答案吗?

标签: android oncreate activity-lifecycle split-screen


【解决方案1】:

为避免在应用程序进入 MultiWIdow 模式 (SplitView) 时在活动中调用 onCreate() 和 onDestroy() 方法,请在 Manifest 文件中写入 android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"。

【讨论】:

  • 这也将防止在横向和纵向之间切换时重新创建。通常,您最好正确实现保存的状态并重新创建活动。手动处理配置更改对于相机、画廊或游戏等全屏活动来说是有意义的。
  • 我不知道你的代码,但如果你的片段每次都重新加载,然后像 if (savedInstanceState == null) { supportFragmentManager.beginTransaction() ... } 那样重写它。这只会设置你的片段一次。您不必更改清单。
猜你喜欢
  • 2011-10-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多