我是否理解正确:
所有Android设备都属于这4个密度桶中的一个:ldpi,mdpi,hdpi,xhdpi.
因此,如果为密度中的每一个提供了可绘制资源(每个文件夹中都存在drawable或同名),则无需在/ res / drawable中提供具有相同名称的drawable或/ RES /抽拉-nodpi.
我的知觉是否正确?
那么,为什么在/ res / drawable中提供相同的资源是有意义的唯一原因是,为了使应用程序更具有前瞻性,以防为Android OS定义新的密度桶?
解决方法
Is my understanfing correct?
通过这一段,你或多或少是正确的.你的下一段有点“脱轨”:
So,the only reason,why it makes sense to provide that same resource in /res/drawable would be,to make the app more future-proof,in case a new density bucket is defined for Android OS?
并不是的.
您将资源放在res / drawable /本质上可伸缩的资源(例如,ShapeDrawable).您将资源放在res / drawable-nodpi /中,由于某种原因,您不希望缩放以匹配设备密度.
如果Android发明了一个新的密度桶(例如,超高密度400dpi的-uhdpi),如果你跳过密度桶,Android可能会做它今天的工作:扩展其他版本之一.例如,如果您有-xhdpi但没有-hdpi,则Android会对-xhdpi映像进行下采样,以便在-hdpi设备上使用.