横屏模式在 Android 工作室中不起作用

Landscape Screen Orientated not working in Android Studios

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

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

android:configChanges="orientation|screenSize|keyboardHidden"

我已将以下内容包含在所有活动 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();
        }

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

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

在你的配置方法中使用这个:

@Override
    public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        Intent intent = getIntent();
        finish();
        startActivity(intent);
    }

改变这个:

android:configChanges="orientation|screenSize|keyboardHidden"

对此:

android:configChanges="screenSize|keyboardHidden"

第一个语句基本上告诉 android 在屏幕旋转时不要重新创建 activity!!!