浅谈Android图片资源文件的尺寸处理

为了应付众多的屏幕,Android将屏幕分为四个等级(也就是四个屏幕密度screenDensity) Android屏幕密度screenDensity 而相应的在Android项目的工程中会有对应的图片资源文件夹(drawable-ldpi、drawable-mdpi、drawable-hdpi、drawable-xdpi), Android程序在呈现图片时会优先选择符合屏幕等级文件夹下的资源。 但是如果资源只在一个文件夹下,Android在不同屏幕下会对该图片做怎样的呈现? 工作中遇到的一个问题是,360p宽的一张资源图片,在720px宽、屏幕密度为xhdpi的屏幕上却呈现为480px的宽度(经过截图量取),经过排查方向该图片只是放在了drawable-hdpi的文件夹下,Android只是死板地按照hdpi的等级来呈现图片。 至于尺寸变化的合理的解释应该是: Android程序在呈现图片时会优先选择符合屏幕等级文件夹下的资源。 Android呈现UI都是换算成dp单位来呈现。 如果只在一个文件夹下有资源,Android在其他屏幕等级下,仍按照改文件夹等级的px到dp的换算规则换算成dp长度来呈现图片。 因此刚才例子中480= »