onConfigurationChanged не срабатывает при вращении одинакового размера
У меня есть сервис, который переопределяет OnConfigurationChanged.
Он вызывается, когда вы изменяете ориентацию с портрета -> ландшафт и наоборот, но проблема в том, когда вы поворачиваете с ландшафта -> пейзаж. Когда вы наклоняете свой телефон влево, вы меняете его вправо.
Как сказано во многих ответах здесь, на stackru, файл манифеста должен быть:
android:configChanges="keyboardHidden|orientation|screenSize"
Изменение ориентации из стороны в сторону (слева и справа) приводит к одному и тому же размеру экрана, поэтому onConfigurationChanged никогда не вызывается.
Мое приложение использует акселерометр, поэтому мне нужно получить текущую ориентацию, чтобы скорректировать свои значения.
Любые мысли о том, как и почему onConfigurationChanged не вызывается?
1 ответ
Любые мысли о том, как и почему onConfigurationChanged не вызывается?
Потому что это не считается изменением конфигурации. Изменения конфигурации - это когда Google считает, что вам потребуются разные ресурсы. Поскольку после поворота экран имеет тот же размер, что и раньше, и, поскольку ничто иное не отличается от ресурсов, они не считают это изменением конфигурации.