我必须检测配置何时发生变化。我已将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();
}
答案 0 :(得分:0)
未检测到旋转的原因是因为我在手机上将设备旋转设置为纵向(取消了自动旋转)。这阻止了我的应用程序旋转。在这里找到答案: onConfigurationChanged not getting called
覆盖用户设置的此偏好设置的方法是将以下代码添加到清单中,如下所示:onConfigurationChanged is not getting called any time in android
android:screenOrientation="sensor"
现在应用程序根据传感器输入旋转,并触发onConfigurationChanged。我希望这个答案可以帮助其他人摆脱这个潜在的错误。
答案 1 :(得分:0)
删除android:configChanges =“orientation | keyboardHidden | screenSize”&gt;