0

我为我的应用程序创建了两个布局文件(在 res/layout 和 res/layout-land 中)。但是当我更改设备方向时,它没有显示正确的布局文件。它只是在两种模式下显示相同的布局文件(res/layout)。为什么它没有在横向模式下拾取横向模式布局文件?我还在清单中的活动中添加了 android:configChanges="keyboard|orientation"。我还需要做什么?我是 android 应用程序开发的新手。

4

2 回答 2

2

如果您在 Manifest 文件中添加添加android:configChanges="keyboard|orientation",它不会更改布局,因为通过添加此属性,您的 Activity 不会再次重新创建,因此它显示与纵向模式相同的布局。因此,android:configChanges="keyboard|orientation"从 Manifest 文件中删除以使其正常工作。

如果您希望您的 Activity 不应该再次创建,并且它应该在您的方向更改时更改布局,您必须添加代码以手动更改布局以onConfigurationChanged()检查my answer here它是否正常工作。

于 2012-05-09T04:21:32.037 回答
1

你不应该添加这个。

android:configChanges="keyboard|orientation"

在您的清单中..因为它不允许调用 onConfigurationchanged 方法...负责处理方向更改...从您的清单中删除该行,它应该可以工作...

于 2012-05-09T04:21:34.470 回答