横向屏幕定向在 Android Studios 中不起作用

Mad*_*e_J 2 android android-layout android-screen-support android-orientation

我已经为所有不同的屏幕尺寸(例如小、大、中和超大)创建了横向模式的 Android 布局资源文件,但是,当我运行该应用程序时,它在横向模式下不起作用,因为有一半的按钮,图像丢失从屏幕上。

我还在 android 清单文件中包含了以下行。

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

我已将以下内容包含在所有活动 java 文件中,但仍然无法正常工作。

 public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);

        if(newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
            Toast.makeText(getApplicationContext(), "Portrait Mode", Toast.LENGTH_SHORT).show();
        }else if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE) {
            Toast.makeText(getApplicationContext(), "Landscape Mode", Toast.LENGTH_SHORT).show();
        }
Run Code Online (Sandbox Code Playgroud)

Android 确实将其切换到横向模式,但是,屏幕内的元素显示不正确。我创建了一个横向布局资源文件,但是,问题是 Android 不使用此布局,因为它在纵向和横向模式下使用相同的布局。

请建议我如何让 Android 知道何时使用横向和纵向模式。

Kos*_*rak 5

改变这个:

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

对此:

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

使用第一个语句,您基本上告诉 android 在屏幕旋转时不要重新创建活动!!!