为了账号安全,请及时绑定邮箱和手机立即绑定

设置可绘制文件夹以用于不同分辨率

设置可绘制文件夹以用于不同分辨率

胡说叔叔 2019-11-26 14:42:24
我需要在应用程序中使用的每个图标有4种不同的尺寸。问题是我的Nexus 7(1280 x 800)和galaxy s2(800 x 480)似乎在drawable-hdpi中使用了资源。如何强制Nexus在drawable-xhdpi中使用资源,然后在10英寸选项卡上使用drawable-xxhdpi。我的清单文件中有这个<supports-screens android:resizeable="true"              android:smallScreens="true"              android:normalScreens="true"              android:largeScreens="true"              android:xlargeScreens="true"              android:anyDensity="true" />
查看完整描述

3 回答

?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

如何强迫Nexus在drawable-xhdpi中使用资源,然后在10英寸标签上使用drawable-xxhdpi?


你不能


限定词hdpi,xhdpi,xxhdpi描述设备的屏幕密度,而不是屏幕的大小。来自官方文件


屏幕密度


屏幕物理区域内的像素数量;通常称为dpi(每英寸点数)。例如,与“正常”或“高”密度屏幕相比,“低”密度屏幕在给定的物理区域内具有较少的像素。为简单起见,Android将所有实际屏幕密度分为四个广义密度:低,中,高和超高。


如果您还想支持平板电脑,请使用large, xlarge限定符。Nexus 7是一台large-hdpi平板电脑(从技术上讲是tvdpi,但从中获取图像hdpi)。因此,如果您要为Nexus 7放置图片,请创建一个名为的文件夹drawable-large-hdpi,然后将图片放在此处。


注意:这是Nexus 7的特殊情况。因为即使Nexus 7是7英寸平板电脑,其分辨率也为1280 * 800。所以这是一个hdpi设备。但是普通的7英寸设备的分辨率较低,为1024 * 600。因此,它们是mdpi设备。因此可绘制的限定符可以更改。(根据我的经验,首先drawable-large-mdpi为7英寸设备放置一个文件夹,然后在Nexus 7上进行检查。如果图像没有问题,则不必放置另一个文件夹。因为如果没有特定的文件夹,Android会检查最接近的可能文件夹并针对设备屏幕进行优化)


现在,对于10英寸平板电脑保护壳,它们是xlarge设备,并且密度可以从更改mdpi为xhdpi(Nexus 10)。但是,许多具有分辨率1280 * 800,他们是mdpi设备。


更好的做法是放置以下可绘制对象


// for Phones

drawable-ldpi

drawable-mdpi

drawable-hdpi


//for 7 inch tablets

drawable-large-mdpi

drawable-large-hdpi(for Nexus 7)


// for 10 inch tablets

drawable-xlarge-mdpi


查看完整回答
反对 回复 2019-11-26
?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

The problem is My Nexus 7 (1280 x 800) and galaxy s2 (800 x 480) seem to use the resources in drawable-hdpi

这取决于设备,如nexus 7具有240dpi这是一个hdpi将采取绘图资源从华电国际这样的,如果你测试相同的设备samsung tab 2,将采取相同的绘制从mdpi,因为它是一个MDPI设备


查看完整回答
反对 回复 2019-11-26
  • 3 回答
  • 0 关注
  • 535 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信