【问题标题】:Android: why fragments are started if they are not visible?Android:如果片段不可见,为什么会启动它们?
【发布时间】:2013-01-18 13:19:07
【问题描述】:

我的Activity 有两种布局。第一个是横向模式,包含两个FrameLayout,第二个是纵向模式,只包含一个FrameLayout。片段被动态添加到各自的FrameLayouts!!我不明白为什么当我以纵向模式旋转屏幕时,会调用 Fragment 的 onStart()onResume() 方法(不再可见!!!!!!)。我知道 Android 会复制所有片段的 Activity 的回调,但这种行为对我来说是毫无意义的! onStart()onResume() 只有在片段可见时才需要调用!!!

这个问题已经在这个post 中讨论过了。但我想了解为什么Android会有这种​​行为!!

谢谢。

【问题讨论】:

    标签: android android-fragments android-lifecycle


    【解决方案1】:

    尝试在您的清单中设置 android:configChanges="orientation",这表明您希望自己管理方向更改并且不需要默认的自动管理。 这将允许您覆盖 onConfigurationChanged,请在以下位置查看详细信息: http://developer.android.com/guide/topics/resources/runtime-changes.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 1970-01-01
      • 2015-09-08
      • 2013-01-27
      • 1970-01-01
      • 2016-10-26
      相关资源
      最近更新 更多