Android 屏幕密度限定符

Android 屏幕密度限定符,android,Android,在我的项目中有hdpi和nodpi限定符文件夹。假设我已将应用程序安装在hdpidensity设备中。它将从哪个限定符文件夹中选择资源?将使用hdpi资源。设备将首先检查相应的dpi资源文件夹 据 系统根据当前屏幕的大小和密度使用适当的替代资源,系统使用任何大小和密度 应用程序中提供的密度特定资源。例如 如果设备具有高密度屏幕,且应用程序请求 可绘制资源,系统查找可绘制资源目录 这与设备配置最匹配。取决于对方 可用的替代资源,具有hdpi的资源目录 限定符(如drawable hdpi/)可能是

在我的项目中有
hdpi
nodpi
限定符文件夹。假设我已将应用程序安装在
hdpi
density设备中。它将从哪个限定符文件夹中选择资源?

将使用hdpi资源。设备将首先检查相应的dpi资源文件夹

  • 系统根据当前屏幕的大小和密度使用适当的替代资源,系统使用任何大小和密度 应用程序中提供的密度特定资源。例如 如果设备具有高密度屏幕,且应用程序请求 可绘制资源,系统查找可绘制资源目录 这与设备配置最匹配。取决于对方 可用的替代资源,具有hdpi的资源目录 限定符(如drawable hdpi/)可能是最佳匹配,因此 系统使用此目录中的可绘制资源
  • 如果没有匹配的资源可用,系统将使用默认资源,并根据需要将其放大或缩小以匹配当前资源 屏幕大小和密度

  • nodpi资源也是默认的资源类型。唯一的区别是它不会缩放图像,但drawable会缩放图像。

    drawable NodePI:这可用于不希望缩放以匹配设备密度的位图资源

    如果在hdpi中运行时,hdpi和nodpi drawable文件夹中有同名的图像,它将仅从hdpi darwable中拾取


    有一个图像具有
    100 x 100 px
    ,我想以相同大小的任何分辨率/密度显示,然后我们需要
    可绘制的nodpi
    文件夹。

    尝试在hdpi和nodpi文件夹中放置两个具有相同名称的不同图像。您将了解它从哪个文件夹中拾取图像。