Android,10.1 和 9.7 英寸显示器的不同布局
Android, different layout for 10.1 and 9.7 inch displays
我已经为特定的 10.1 英寸显示器 (2560x1600) 开发了一个应用程序,并且我的布局文件是为适应该特定分辨率而编写的。
现在我需要制作相同的应用程序以在n 9.7 英寸显示屏 (2048x1536) 上工作。
这是我第一次必须做这样的事情,我不知道哪种方法是正确的。在新平板电脑上使用实际的布局文件有点乱,没有什么是正确的,就像在旧平板电脑上放大一样。
我读过一些关于为不同布局创建文件夹的内容,但问题是如果我创建文件夹“layout-sw720dp” 两台平板电脑都使用相同的布局,我不想这样做。
"different layout files" 是正确的方法吗?如果是这样,我如何为特定的 "resolution" 或其他任何内容指定布局?
还有其他方法可以解决这个问题吗?
谢谢!
如果您的布局设计得当 layout-sw720dp 应该可以完美地处理这两款平板电脑。
how can I specify a layout for an specific "resolution" or whatsoever?
这部分有两种宽度前缀。 layout-wXXX 适用于宽度恰好为 XXX 的设备,仅此而已。然而,layout-swXXX 适用于宽度至少为 XXX 的设备。
同样,精心设计的 layout-sw720dp 文件夹应该可以满足您的需求。
在 android studio 应用程序的 app 文件夹中,转到 res-> layout,右键单击 select New -> Layout 资源文件。在新的资源文件 window 上,给文件名 dimens。
在可用限定符 select 维度上并将其推入所选限定符并将维度指定为 2048x1536。您可以使用此文件指定尺寸为 2048x1536 的平板电脑的布局。
在Android中,有不同类型的属性限定符,这有助于我们为不同的types/resolutions设备设计应用程序。然而,在这种特殊情况下,对于几乎所有限定符类型,两种分辨率都属于相同的属性。
它们都属于 xlarge
设备的 xhdpi
括号。所以你不能使用这些限定词。但是有一点不一样,那就是两个分辨率的 shortest width
限定词。
2560 x 1600 的最短宽度为 800dp,2048 x 1536[=33 的最短宽度为=] 将是 768dp。所以可以使用layout-sw<>dp
属性来区分这两个设备。
对于 10.1 英寸显示器 (2560 x 1600):layout-sw800dp
对于 9.7 英寸显示屏 (2048 x 1536):layout-sw768dp
当你使用layout-sw720dp
文件夹时,两台设备都会使用相同的文件夹,因为两台设备的最短宽度都大于720。检查这个developer doc section(尤其是table) 获取更多信息。
我已经为特定的 10.1 英寸显示器 (2560x1600) 开发了一个应用程序,并且我的布局文件是为适应该特定分辨率而编写的。
现在我需要制作相同的应用程序以在n 9.7 英寸显示屏 (2048x1536) 上工作。 这是我第一次必须做这样的事情,我不知道哪种方法是正确的。在新平板电脑上使用实际的布局文件有点乱,没有什么是正确的,就像在旧平板电脑上放大一样。
我读过一些关于为不同布局创建文件夹的内容,但问题是如果我创建文件夹“layout-sw720dp” 两台平板电脑都使用相同的布局,我不想这样做。 "different layout files" 是正确的方法吗?如果是这样,我如何为特定的 "resolution" 或其他任何内容指定布局?
还有其他方法可以解决这个问题吗?
谢谢!
如果您的布局设计得当 layout-sw720dp 应该可以完美地处理这两款平板电脑。
how can I specify a layout for an specific "resolution" or whatsoever?
这部分有两种宽度前缀。 layout-wXXX 适用于宽度恰好为 XXX 的设备,仅此而已。然而,layout-swXXX 适用于宽度至少为 XXX 的设备。
同样,精心设计的 layout-sw720dp 文件夹应该可以满足您的需求。
在 android studio 应用程序的 app 文件夹中,转到 res-> layout,右键单击 select New -> Layout 资源文件。在新的资源文件 window 上,给文件名 dimens。 在可用限定符 select 维度上并将其推入所选限定符并将维度指定为 2048x1536。您可以使用此文件指定尺寸为 2048x1536 的平板电脑的布局。
在Android中,有不同类型的属性限定符,这有助于我们为不同的types/resolutions设备设计应用程序。然而,在这种特殊情况下,对于几乎所有限定符类型,两种分辨率都属于相同的属性。
它们都属于 xlarge
设备的 xhdpi
括号。所以你不能使用这些限定词。但是有一点不一样,那就是两个分辨率的 shortest width
限定词。
2560 x 1600 的最短宽度为 800dp,2048 x 1536[=33 的最短宽度为=] 将是 768dp。所以可以使用layout-sw<>dp
属性来区分这两个设备。
对于 10.1 英寸显示器 (2560 x 1600):layout-sw800dp
对于 9.7 英寸显示屏 (2048 x 1536):layout-sw768dp
当你使用layout-sw720dp
文件夹时,两台设备都会使用相同的文件夹,因为两台设备的最短宽度都大于720。检查这个developer doc section(尤其是table) 获取更多信息。