针对多种设备尺寸的最佳方法是什么?

时间:2014-01-03 22:08:29

标签: java android android-layout

我希望支持设备(电视,平板电脑,手机)

我有以下目录设置。

RES /布局/
RES /布局小/
RES /布局大/
res / layout-xlarge /

我预计layout-xlarge只针对电视,但它似乎也是针对我的10英寸平板电脑。

谁能告诉我为什么会这样?

我应该尝试使用屏幕宽度目录结构/

e.g。 res / layout-sw600dp等。

2 个答案:

答案 0 :(得分:2)

使用'-small','--large'等来定位分辨率。因此,具有高DPI的小型设备将被视为“-xlarge”(例如,Nexus 5)。

正如你所说,正确的方法是使用dp结构(如你所说的-sw600dp)。

Android中的

dp是密度无关像素的单位: What is the difference between "px", "dp", "dip" and "sp" on Android?

使用'tvdpi'也可能是定位电视的好主意。

以下是此信息的良好资源:

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

答案 1 :(得分:1)

我使用以下内容:

-sw320dp (or default) for smaller phones
-sw360dp for regular phones
-sw480dp for huge phones
-sw600dp for 7" tablets
-sw720dp for 10" tablets

您还可以指定像素密度,例如-ldpi,-mdpi,-hdpi,-xhdpi和-xxhdpi。

这是我的一个项目的截图。在这里,我尝试为所有屏幕尺寸和密度提供完美的图像。对于你想要做的事情,这可能是过度的。

multiple_sizes

有关详细信息,请参阅http://developer.android.com/guide/practices/screens_support.html