我有一个包含两个布局文件的活动,分别用于纵向和横向模式。我看到每次改变方向时都会调用onCreate方法。我尝试使用
android:configChanges = "orientation"
在清单文件中,但它只读取纵向布局。有没有办法可以在不调用onCreate的情况下将布局设置为横向模式?
答案 0 :(得分:2)
如果您使用android:configChanges = "orientation"
,则必须覆盖onConfigurationChanged(...)
的{{1}}方法。检查Activity
参数以获取新方向,然后手动设置所需的布局。
请参阅以下链接:
答案 1 :(得分:0)
您可以创建两个布局文件夹。一个用于纵向模式,一个用于横向。 布局和布局 - 土地。
答案 2 :(得分:0)
这是Android生活中的一个事实。由于配置更改(如屏幕方向更改),您需要围绕可以在任何时刻销毁它的事实来开发您的活动。 在暂停时保存用于构建屏幕的所有信息,并在onCreate中重新创建。
答案 3 :(得分:0)
如果您希望您的活动仅处于横向模式,请在AndroidManifest.xml中为活动设置此属性:
android:screenOrientation="landscape"
您可以将layout.xml文件放在这些文件夹中,以用于不同的屏幕方向: