【问题标题】:Screen orientation in androidandroid中的屏幕方向
【发布时间】:2012-05-09 04:18:32
【问题描述】:
我为我的应用程序创建了两个布局文件(在 res/layout 和 res/layout-land 中)。但是当我更改设备方向时,它没有显示正确的布局文件。它只是在两种模式下显示相同的布局文件(res/layout)。为什么它没有在横向模式下拾取横向模式布局文件?我还在清单中的活动中添加了 android:configChanges="keyboard|orientation"。我还需要做什么?我是 android 应用程序开发的新手。
【问题讨论】:
标签:
android
android-layout
android-manifest
screen-orientation
【解决方案1】:
如果您在 Manifest 文件中添加已添加的 android:configChanges="keyboard|orientation",它不会更改布局,因为通过添加此属性,您的 Activity 不会再次重新创建,因此它会显示与纵向模式相同的布局。因此,请从 Manifest 文件中删除 android:configChanges="keyboard|orientation" 以使其正常工作。
如果您希望您的 Activity 不应再次创建,并且它应该在您的方向更改时更改布局,您必须在 onConfigurationChanged() 中添加用于手动更改布局的代码,请检查 my answer here 以使其正常工作。
【解决方案2】:
你不应该添加这个。
android:configChanges="keyboard|orientation"
在您的清单中...因为它不允许调用 onConfigurationchanged 方法...该方法负责处理方向更改...从您的清单中删除该行,它应该可以工作...