【问题标题】:Detect configuration changes in onStop() method without using isChangingConfigurations()在不使用 isChangingConfigurations() 的情况下检测 onStop() 方法中的配置更改
【发布时间】:2013-02-04 09:19:37
【问题描述】:

目前我正在使用 API 级别 10 编写 Android 应用程序。我需要在 onStop() 方法中检测配置更改(屏幕旋转)。我不能使用isChangingConfigurations() 方法,因为它只适用于 API 级别 11 或更高级别。

如何在onStop() 方法中手动检测配置更改?

【问题讨论】:

    标签: java android api android-activity


    【解决方案1】:

    您能否更深入地解释您的问题,因为我在这里看不到案例...我的意思是 onStop(),因为您可以在此处阅读 http://developer.android.com/reference/android/app/Activity.html#onStop() 当您的活动不再对用户可见时被调用。它也永远不会被调用。因此,当您的活动消失时,我看不到您将如何检测任何 UI 行为。

    如果您想检测某些 UI 行为,您需要在清单中的活动声明中的 android:configChanges 属性中声明它。你可以在这里查看文档http://developer.android.com/guide/topics/manifest/activity-element.html

    在您的情况下(屏幕旋转),您将需要 android:configChanges="orientation|screenLayout" 方向处理 prehoneycomb 设备中的屏幕旋转和 screenLayout 其余部分。

    因此,当您在活动元素中声明并旋转设备时,将调用 onConfigurationChanged() 方法(您应该覆盖该方法),您可以在其中执行操作。 Activity 本身不会重新创建,并且不会调用 onCreate()。

    【讨论】:

    • 其实我需要在onStop()中检查,Activity是否处于被销毁的过程中,以便使用新的配置重新创建。在 API 级别 11 中,我可以使用 isChangingConfigurations() 方法,但在 API 级别 10 中,我无法使用它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-15
    • 1970-01-01
    • 2015-04-11
    • 2020-03-09
    • 2017-11-20
    • 1970-01-01
    相关资源
    最近更新 更多