android phone 和平板电脑布局
android phone and tablet layout
我有一个适用于手机的简单应用,其结构如下:
现在,我想在用户
时更好地利用未使用的 space
在平板电脑或横向模式下使用该应用程序。差不多像这样:
有什么方法可以检查(分辨率或设备类型)
在 onCreate?
上将 xml 布局从 phone_layout.xml 切换到 tablet_layout.xml
或者我应该为此使用片段?
谢谢
您可以使用 resource buckets。
基本上你必须在两个不同的资源文件夹中创建两个同名的布局文件:
res/layout/your_layout.xml
:这将是除下面提到的任何其他设备的默认布局
res/layout-sw600dp/your_layout.xml
:此布局将由 最小宽度 为 600 dp 的设备选择(平板电脑属于此类)
系统足够智能,可以根据 运行 设备选择正确的布局,只要您将布局命名为相同的布局即可。
参考 Android 文档:http://developer.android.com/training/basics/supporting-devices/screens.html
您可以使用相同名称但在指示屏幕分辨率的不同文件夹下设置多个布局(它可用于其他配置,如:语言、屏幕方向和 dp)
MyProject/
res/
layout/
main.xml
layout-large/
main.xml
P.S。这种方法可用于可绘制对象
MyProject/
res/
drawable-xhdpi/
awesomeimage.png
drawable-hdpi/
awesomeimage.png
drawable-mdpi/
awesomeimage.png
drawable-ldpi/
awesomeimage.png
对于平板电脑,在 /res/layout-sw600dp/activity_layout.xml
中创建一个文件夹用于垂直查看,并在 /res/layout-sw600dp-land/activity_layout.xml
中创建一个文件夹
用于水平查看。
对于 phone,除了 /res/layout/activity_layout.xml
中的普通文件夹外,添加另一个文件夹 /res/layout-land/
用于水平查看。
为 activity_layout.xml
中的各个图像创建文件夹 /drawables- sw600dp
,/drawable-sw600dp-land
用于横向显示。
我有一个适用于手机的简单应用,其结构如下:
现在,我想在用户
时更好地利用未使用的 space
在平板电脑或横向模式下使用该应用程序。差不多像这样:
有什么方法可以检查(分辨率或设备类型)
在 onCreate?
或者我应该为此使用片段?
谢谢
您可以使用 resource buckets。
基本上你必须在两个不同的资源文件夹中创建两个同名的布局文件:
res/layout/your_layout.xml
:这将是除下面提到的任何其他设备的默认布局res/layout-sw600dp/your_layout.xml
:此布局将由 最小宽度 为 600 dp 的设备选择(平板电脑属于此类)
系统足够智能,可以根据 运行 设备选择正确的布局,只要您将布局命名为相同的布局即可。
参考 Android 文档:http://developer.android.com/training/basics/supporting-devices/screens.html
您可以使用相同名称但在指示屏幕分辨率的不同文件夹下设置多个布局(它可用于其他配置,如:语言、屏幕方向和 dp)
MyProject/
res/
layout/
main.xml
layout-large/
main.xml
P.S。这种方法可用于可绘制对象
MyProject/
res/
drawable-xhdpi/
awesomeimage.png
drawable-hdpi/
awesomeimage.png
drawable-mdpi/
awesomeimage.png
drawable-ldpi/
awesomeimage.png
对于平板电脑,在 /res/layout-sw600dp/activity_layout.xml
中创建一个文件夹用于垂直查看,并在 /res/layout-sw600dp-land/activity_layout.xml
中创建一个文件夹
用于水平查看。
对于 phone,除了 /res/layout/activity_layout.xml
中的普通文件夹外,添加另一个文件夹 /res/layout-land/
用于水平查看。
为 activity_layout.xml
中的各个图像创建文件夹 /drawables- sw600dp
,/drawable-sw600dp-land
用于横向显示。