Android:onConfigurationChanged()没有调用Orientation中的更改

N S*_*rma 3 android

我有一个活动,当我改变方向时onConfigurationChanged(),不会被调用.

请帮我解决这个问题.我试过但找不到原因.

码:

@Override
public void onConfigurationChanged(Configuration configure){
    super.onConfigurationChanged(configure);
    setLayout(); //Set the layout.

    //Get the orientation of the device and set the gravity according to that.
    if(configure.orientation == Configuration.ORIENTATION_PORTRAIT) {
        parentLinearLayout.setGravity(Gravity.CENTER_VERTICAL);
    } else if(configure.orientation == Configuration.ORIENTATION_LANDSCAPE) {
        parentLinearLayout.setGravity(Gravity.CENTER_HORIZONTAL);
    }
}

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

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="15" />
Run Code Online (Sandbox Code Playgroud)

Ava*_*i Y 18

如果您要定位API 13或更高,则必须添加screenSize.请更改此行:

android:configChanges="orientation|keyboardHidden"
Run Code Online (Sandbox Code Playgroud)

android:configChanges="orientation|screenSize|keyboardHidden"
Run Code Online (Sandbox Code Playgroud)

  • 是的,如果您的目标是API 13或更高版本,则必须添加`screenSize`. (3认同)