在我的安卓应用程序中,我用相同的文件名设计了两个不同的布局,比如my_profile.xml,并存储在两个不同的目录中,即1) res/layout,2) res/layout-land。现在的问题是,如果我在纵向模式下开始活动,它会加载纵向模式布局,但更改方向后它不会更改布局,但如果我在横向模式下启动活动,它会加载横向布局,即完美。问题是只有当我改变方向时,它才不会自动处理它。有人能告诉我,问题出在哪里吗?
发布于 2012-12-28 11:44:34
检查以下各项:
1)在清单文件中检查活动中的以下行
android:configChanges="orientation|keyboardHidden|screenSize"
2)覆盖以下函数
@Override
public void onConfigurationChanged(Configuration newConfig) {
// TODO Auto-generated method stub
super.onConfigurationChanged(newConfig);
Log.d(tag,"onconfig");
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
// do something
Log.d(tag,"land");
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
// do something
}
}
-Preeya
发布于 2012-12-28 11:44:45
在manifest.xml中进行如下更改,,,
<activity android:name=".myActivity" android:windowSoftInputMode="adjustPan" android:configChanges="keyboardHidden"></activity>
不要使用configuartionChanges="orientation“
就是这样。
发布于 2012-12-28 11:52:43
检查您的清单文件。如果您的活动中包含以下内容,则将其删除:
android:configChanges="keyboard|orientation|screenSize"
orientation
使活动采用相同的布局,而不是创建新的布局。
https://stackoverflow.com/questions/14068901
复制相似问题