我动态定义了所有GUI组件。当第一次按下Cntrl + F11时,布局正确地从纵向更新为横向。但是当我再次按下Cntrl + F11时,布局仍保留在其景观中#34;看。如何为"肖像"更新它?再看一次?源代码:
//Main Layout ll
LinearLayout ll ;
ll.setOrientation (LinearLayout.VERTICAL);
ll.setLayoutParams(new ViewGroup.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
//Inner layout ll2 is inside of the main layout ll
LinearLayout ll2 = new LinearLayout (this);
ll2.setWeight(1.0f);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT);
lp.weight = 0.25f;
//Button b is inside of the inner layout ll2
Button b = new Button (this);
b.setLayoutParams(lp);
ll2.addView (b);
ll.addView(ll2);
我试过这个解决方案(来自这个网站): 我添加了功能
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
setContentView(ll);
}
并在AndroidManifest中设置我
android:configChanges="keyboardHidden|orientation"
但它很有效。谢谢。
答案 0 :(得分:2)
在xml文件中使用
android:orientatoin =“portrait”
也可以在onCreate()方法中写入
您还可以像这样在ANDROID_MANIFEST中指定
<activity android:name=".activityName" android:screenOrientation="landscape"></activity>
答案 1 :(得分:0)
要将配置还原为肖像,请使用组合键ctrl + F9