我已经为纵向和横向的大屏幕创建了一个布局,并且在这两个布局中都有一个signin.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;
}
}当我从横向到纵向再到横向时,如何获得我的横向视图?
有什么建议吗?提前感谢
发布于 2012-05-22 15:09:16
你的肖像是xml文件夹布局还是布局-肖像?如果它的布局是纵向的,请不要这样声明。只需创建默认的'layout‘文件夹,当方向为纵向时,操作系统将获取xml。
接下来,在android:configChanges="keyboardHidden|orientation“中注释上面的代码,并在活动声明前面的androidmanifest.xml和java中声明,并测试它是否有效。
发布于 2012-05-22 14:44:49
为什么要覆盖onconfigchanges呢?这可能就是弄乱你的布局的原因。当你有一个包含你的布局的布局和布局-土地文件夹时,android能够处理布局的变化。
https://stackoverflow.com/questions/10696948
复制相似问题