Android方向更改
我的选项卡式应用程序不会重新显示方向更改的视图。Android方向更改
我加入
android:configChanges="keyboardHidden|orientation"
到主标签活性和在清单中的每个活动。
我添加到每个活动这个方法:
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
setContentView(R.layout.active_alt);
mColorLegendBtn = (Button) findViewById(R.id.colorbtn);
mStatusView = (TextView) findViewById(R.id.celltitle1);
TextView mStatusView1 = (TextView) findViewById(R.id.celltitle2);
mStatusView1.setText(mStatusView1.getText()+"testcase1");
mStatusView.setText(mStatusView.getText()+"testcase");
initUI();
}
public void initUI() {
l1 = (ListView) findViewById(R.id.ListView01);
EfficientAdapter efficientAdapter = new EfficientAdapter(mContext);
l1.setAdapter(null);
l1.setAdapter(efficientAdapter);
}
上启动,标签,列表,按钮和TextView的正确显示。 当我在模拟器中更改方向时,只有选项卡不显示任何其他窗口小部件,屏幕显示为黑色。
我错过了什么?
难道只是您的布局不能在横向/纵向模式下工作?旋转后尝试启动你的应用程序,检查是否给出了相同的结果。如果是这样的:修复你的布局:D
该应用程序在两个方向工作。在任一方向改变方向时,它都不会重新显示。 – Tori 2011-01-06 15:20:57
标签...你是否使用tabactivity和自己的活动标签?你是否也添加了代码到你的tabactivity?我会添加一些日志记录来检查什么onconfigchanged函数被调用,什么时候。 – Nanne 2011-01-06 15:28:06
是的,我确实将onconfigchanged添加到了tabactivity中,并且通过日志我可以看到在tab活动和正在显示的活动中都调用了onconfigchanged。问题是没有显示视图。 – Tori 2011-01-06 15:33:17
我有这个问题。经过多次试验和错误之后,我最终通过对清单进行单行更改来解决此问题。
诀窍是
android:configChanges="orientation|keyboardHidden"
添加到清单您TabActivity
的条目。独自留下所有的儿童活动。甚至不打扰执行,甚至不在TabActivity
。
我不知道如何或为什么这似乎工作,但效果是布局刷新,并且标签和子活动内容都在新的方向正确重绘。
随着成功,我发现最好的方法有屏幕的变化与大多数控制是使景观模式布局XML在一个单独的XML像这样:使用/布局/和/布图设计
res/layout-land/youractivity.xml
土地/你的布局以及格雷厄姆博兰德的答案是金黄的。
<activity android:name=".MainActivity"
android:label="@string/app_name"
android:screenOrientation="unspecified"
android:launchMode="standard"
android:configChanges="orientation|keyboardHidden"
>
上面的代码片段是使我的工作。 :)
喔我相信“未指定”是什么使得系统能够做什么它认为是最好的......
祝你好运!
在Mono
为Android
与目标API大于13
我发现,这将大大的命名空间内,但Activity class
线外:
[Activity (Label = "Viewer", ConfigurationChanges = ConfigChanges.Orientation|ConfigChanges.ScreenSize)]
导致的OnConfigurationChanged()
触发,即使改变清单有不。
我遇到了一个非常类似的问题,并找到了不同的解决方法。它表现在几个不同的情况。看到我的问题[这里](http://stackoverflow.com/questions/8103639/android-orientation-change-causes-imageview-to-dissapear)。 – 2011-11-12 10:11:47