Android Layout土地无法正常工作

Gar*_*ael 10 layout android onconfigurationchanged android-configchanges

我一直在查看stackoverflow中的问题,我已经尝试了所有我见过但布局 - 土地不起作用.在我的代码中,我有和方法onConfigurationChanged

@Override
 public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);           
}
Run Code Online (Sandbox Code Playgroud)

和清单文件:

<activity
        android:name="com.sde.PlayerTrack"
        android:theme="@style/AppTheme"
        android:configChanges="orientation|keyboardHidden|screenSize"
        >
    </activity>
Run Code Online (Sandbox Code Playgroud)

我也尝试删除android清单条目:configChanges然后布局陆载,但我有的组件(TextView,滚动条...)不能正常工作.

你能帮我吗?

Che*_*rag 17

从清单文件中的android:configChanges中删除"orientation".并将横向布局xml文件放入layout-land文件夹.


Gar*_*ael 7

最后,我的解决方案是:

AndroidManifest.xml文件:

<activity
        android:name="activity.name"
        android:configChanges="orientation|keyboardHidden|screenSize"       
        >
Run Code Online (Sandbox Code Playgroud)

并在活动中实现onConfigurationChanged方法(Configuration newconfig):

@Override
 public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);     
        if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
            createHorizontalalLayout();            
        } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
            createVerticalLayout();             
        }
}
Run Code Online (Sandbox Code Playgroud)

使用createVerticalLayout()和createHorizo​​ntalLayout()以编程方式执行布局.