我已经参考了能够为活动指定两个单独的布局XML文件,一个用于肖像,一个用于景观。不过,我没有找到有关如何做到这一点的任何信息。如何为每个活动指定哪个XML文件是肖像布局,哪个是景观布局?

是否也可以为不同的屏幕尺寸指定不同的布局?如果是这样,这是如何完成的?

有帮助吗?

解决方案

创建一个 layout-land 目录并将布局XML文件的景观版本放在该目录中。

其他提示

您只需要根据方向和分辨率将其放在带有不同名称的单独文件夹下,该设备将自动为其屏幕设置选择合适的文件夹

更多信息在这里:

http://developer.android.com/guide/practices/screens_support.html

在“屏幕尺寸和密度的资源目录预选赛”下

对于鼠标爱好者! 我说右键单击资源文件夹和 Add new resource file, ,从可用的预选赛中选择 orientation :

enter image description here


但是,您仍然可以通过说,将子文件夹“布局”添加到

“您的项目directory app src main res”

从那以后 自动地.

使用“布局 - 端口”进行肖像模式。

只是提醒:

消除 orientationandroid:configChanges 您清单中活动的属性 xml 文件如果您定义了:

android:configChanges="orientation|screenLayout|screenSize"

创建一个新目录 layout-land, ,然后创建 xml 具有相同名称的文件 layout-land 因为它是 layout 目录和对齐您的景观模式的内容。

请注意,两者中的内容ID xml 是同样的。

或使用此:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
            android:scrollbars="vertical" 
            android:layout_height="wrap_content" 
            android:layout_width="fill_parent">

  <LinearLayout android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent">

     <!-- Add your UI elements inside the inner most linear layout -->

  </LinearLayout>
</ScrollView>

我认为最新的Android版本中最简单的方法是使用XML的设计模式(不是文本)。

然后从菜单中选择选项 - 创建景观变化。这将在几秒钟内创建一个没有任何麻烦的景观XML。最新的Android Studio版本使您可以立即创建景观视图。

enter image description here

我希望这对您有用。

下面的最后一行是应用两个量词的示例: 景观和最小宽度(600DP)屏幕。更新600DP,并使用所需的dp。

res/layout/main_activity.xml                # For handsets
res/layout-land/main_activity.xml           # For handsets in landscape
res/layout-sw600dp/main_activity.xml        # For 7” tablets
res/layout-sw600dp-land/main_activity.xml   # For 7” tablets in landscape

以上也适用于尺寸

res/values/dimens.xml                # For handsets
res/values-land/dimens.xml           # For handsets in landscape
res/values-sw600dp/dimens.xml        # For 7” tablets
res/values-sw600dp-land/dimens.xml   # For 7” tablets in landscape

一个有用的设备指标: https://material.io/tools/devices/

  1. 右键单击RES文件夹,
  2. 新 - > Android资源文件
  3. 在可用的预选赛中,选择方向,
  4. 添加到选定的预选赛
  5. 在屏幕方向,选择景观
  6. 按确定

使用Android Studio 3.4.1, 它不再创造 layout-land 文件夹. 。它将创建一个文件夹并将两个布局文件放在一起。

enter image description here

Android Studio 3.xx的最快方法

1.进入活动布局的设计选项卡

2.在顶部,您应该按在预览按钮的方向上,有一个创建景观布局(检查图像)的选项,将创建一个新文件夹,作为该特定方向的XML布局文件

enter image description here

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top