【问题标题】:onConfigurationChanged is not getting triggeredonConfigurationChanged 没有被触发
【发布时间】:2016-01-17 11:56:18
【问题描述】:

我必须检测配置何时更改。我已将 configChanges 条件放在清单中

    <activity
        android:name=".WorkoutActivity"
        android:configChanges="orientation|keyboardHidden|screenSize">
    </activity>

在活动或任何片段中都没有 setRequestedOrientation。这是配置更改的代码:

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    Toast.makeText(this, "activity rotated", Toast.LENGTH_SHORT).show();
}

【问题讨论】:

    标签: android orientation screen-orientation android-orientation onconfigurationchanged


    【解决方案1】:

    未检测到旋转的原因是因为我在手机上将设备旋转设置为纵向(取消自动旋转)。这阻止了我的应用程序旋转。在这里找到了答案: onConfigurationChanged not getting called

    覆盖用户设置的此首选项的方法是将以下代码添加到清单中,如此处回答:onConfigurationChanged is not getting called any time in android

    android:screenOrientation="sensor"
    

    现在应用根据传感器输入旋转并触发 onConfigurationChanged。我希望这个答案可以帮助其他人摆脱这个潜在的错误。

    【讨论】:

      【解决方案2】:

      移除 android:configChanges="orientation|keyboardHidden|screenSize">

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-03-02
        • 1970-01-01
        • 1970-01-01
        • 2017-11-22
        • 2012-06-03
        • 2019-11-07
        • 2018-09-01
        相关资源
        最近更新 更多