我正在创建一个Android应用程序,并希望为手机大小的屏幕和平板电脑大小的不同背景图像。我已经为不同的分辨率(mdpi
,hdpi
等)提供了不同的分辨率图像。挑战在于大多数平板电脑都使用mdpi
,但有些手机也可能会使用它。
我尝试过做一些研究,但似乎只能在布局中定义屏幕尺寸,例如res/layout/layout-large
。这是否意味着我必须为平板电脑创建一个单独的xml,并链接到@drawable/tablet-background
?或者是否有其他解决方案,xml或programmatic?
答案 0 :(得分:3)
mdpi , hpdi 等是指屏幕密度,它独立于平板电脑或手机设备。如果我理解正确,你要做的是为平板电脑和手机使用不同的背景图像。 有三种方式:
在 layout 和 layout-large 文件夹中使用相同的xml布局(元素ID除外),并使用以下内容以编程方式更改背景:
public boolean isTablet(){
return (findViewById(R.id.tablet_view) != null);
}
其中,tablet_view是仅在 layout-large xml布局中显示的元素ID。
答案 1 :(得分:2)
并希望手机大小的屏幕和背景图像不同 平板电脑大小的
尝试使用所需的屏幕大小限定drawable
文件夹以及目标设备的密度值,例如drawable-large-mdpi
。屏幕尺寸必须首先基于configuration qualifiers table。