Android 横向到纵向不加载屏幕,当方向改变



>我已经为纵向和横向的大屏幕创建了一个布局,并且在两个布局中都有一个登录.xml但是当我更改屏幕方向时,它不会加载横向xml,而是更改为横向模式,但纵向xml已加载。我也在清单中提到了onconfig更改,请让我知道方向更改时如何保存数据请给我看一些例子.

下面是我的Java代码

              public void onConfigurationChanged(Configuration newConfig) {
          super.onConfigurationChanged(newConfig);
               Display display = ((WindowManager)       getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
            int   orientation = display.getOrientation(); 
            boolean oAllow = false;
            switch(orientation) {
            case Configuration.ORIENTATION_PORTRAIT:
            if(!oAllow ) {
                    setRequestedOrientation    (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
            }
            break;
        case Configuration.ORIENTATION_LANDSCAPE:
            if(!oAllow) {
                    setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
            }
            break;
    }
      }

当我将横向更改为纵向到横向时,如何获取我的横向视图?

请有什么建议吗?提前致谢

您的纵向 xml 文件夹布局还是纵向布局?如果是布局纵向,请不要这样声明。只需创建默认的"布局"文件夹,当方向为纵向时,操作系统将获取 xml。

接下来,用java注释上面的代码,并在androidmanifest.xml中声明android:configChanges="keyboardHidden|orientation"在你的活动声明前面,并测试它是否有效。

你到底为什么要覆盖 onconfigchanges?这可能是弄乱您的布局的原因。当您拥有包含布局的布局和布局-土地文件夹时,Android 能够处理布局更改。

最新更新