Мне нужно применять разные макеты для портретной и альбомной ориентации моей деятельности.Кроме того, мне нужно показать предупреждение, если ориентация портретная.
Я указал android:configChanges="orientation|keyboardHidden"
в AndroidManifest.Я также переопределяю метод onConfigurationChanged следующим образом:
@Override
public void onConfigurationChanged(Configuration newConfig)
{
Log.d("tag", "config changed");
super.onConfigurationChanged(newConfig);
int orientation = newConfig.orientation;
if (orientation == Configuration.ORIENTATION_PORTRAIT)
Log.d("tag", "Portrait");
else if (orientation == Configuration.ORIENTATION_LANDSCAPE)
Log.d("tag", "Landscape");
else
Log.w("tag", "other: " + orientation);
....
}
При повороте из альбомной в книжную ориентацию журнал выглядит так:
config changed
Portrait
Но при переходе от портретной к альбомной ориентации это выглядит как
config changed
Portrait
config changed
Landscape
Почему onConfigurationChanged вызывается дважды?Как я могу избежать этого?