Android横向布局

时间:2012-05-11 13:39:19

标签: java android android-layout

我正在设计一个应用程序,我只是想知道在横向模式下如何制作不同的布局。我在res中创建了一个名为“layout-land”的文件夹并创建了一个xml文件,但是当我运行模拟器时它不起作用。我试着把它称为“主要”,但它说它已经存在,但它在“布局”文件夹中。如果我称之为不同的东西我需要更改清单中的某些内容吗?谢谢您的帮助!

3 个答案:

答案 0 :(得分:10)

只是为了澄清,如果您在横向或纵向中,Android首先在-land目录中查找布局文件,如果找不到,则会检查默认的layout目录。您的文件应按以下方式命名,并且系统将根据设备的当前配置在运行时加载:

res/layout/main.xml
res/layout-land/main.xml

查看providing resources上的文档以获取更多信息。

答案 1 :(得分:1)

你想要一个像这样的文件夹结构:

res\layout\main.xml
res\layout-land\main.xml

这些布局中的每一个都应包含相同的元素,但需要重新排列,例如如果您在纵向横向中有一个带有android:id="@+id/button1"的按钮,则需要在横向模式下为同名按钮提供相同的名称。

答案 2 :(得分:1)

首先,您必须通过添加到清单来监听配置更改

android:configChanges="orientation"

然后你可以覆盖这个函数并使用setContentView

public void onConfigurationChanged(Configuration newConfig)