我正在设计一个应用程序,我只是想知道如何在横向模式下制作不同的布局。我在 res 中创建了一个名为“layout-land”的文件夹并创建了一个 xml 文件,但是当我运行模拟器时它不起作用。我试着称它为“main”,但它说它已经存在,但它确实存在于“layout”文件夹中。如果我称它为不同的东西,我是否需要更改清单中的某些内容?谢谢您的帮助!
问问题
9063 次
3 回答
10
澄清一下,如果您在横向或纵向,Android-land
首先在任一目录中查找布局文件,如果未找到,则检查默认layout
目录。您的文件应命名如下,系统将根据设备的当前配置在运行时加载:
res/layout/main.xml
res/layout-land/main.xml
查看有关提供资源的文档以获取更多信息。
于 2012-05-11T13:44:15.757 回答
1
您需要这样的文件夹结构:
res\layout\main.xml
res\layout-land\main.xml
这些布局中的每一个都应包含相同的元素但重新排列,例如,如果您有一个android:id="@+id/button1"
在纵向横向中的按钮,您将需要在横向模式下为等效按钮提供相同的名称。
于 2012-05-11T13:43:58.790 回答
1
首先,您必须通过添加到清单来监听配置更改
android:configChanges="orientation"
然后你可以覆盖这个函数并使用 setContentView
public void onConfigurationChanged(Configuration newConfig)
于 2012-05-11T13:44:04.933 回答