Android文档表明我应该为不同分辨率的手机屏幕提供不同的图标。 http://developer.android.com/guide/practices/screens_support.html#qualifiers
res/drawable-ldpi/my_icon.png // icon image for low density
res/drawable-mdpi/dpi/my_icon.png // icon for medium density
res/drawable-hdpi/my_icon.png // icon image for high density
使用Eclipse为Android编译时,这不起作用。有没有人有一个适用于多个分辨率图标的清单文件示例?
谢谢, 格里
答案 0 :(得分:0)
您仍应将您的图标称为@drawable/my_icon
“开发者指南”的Providing Resources部分更进一步说明了如何创建更复杂的别名,在以下部分中:
创建别名资源
如果您有一个资源要用于多个设备配置(但不适用于所有配置),则无需在每个备用资源目录中放置相同的资源。相反,您可以(在某些情况下)创建备用资源,该资源充当保存在默认资源目录中的资源的别名。
注意:并非所有资源都提供了一种机制,您可以通过该机制为其他资源创建别名。特别是,
xml/
目录中的动画,菜单,原始和其他未指定的资源不提供此功能。例如,假设您有一个应用程序图标
icon.png
,并且需要针对不同区域设置的唯一版本。但是,两个语言环境,英语 - 加拿大语和法语 - 加拿大语,需要使用相同的版本。您可能认为需要将相同的图像复制到英语 - 加拿大语和法语 - 加拿大语的资源目录中,但事实并非如此。相反,您可以将用于两者的图像保存为icon_ca.png
(icon.png
以外的任何名称),并将其放在默认的res/drawable/
目录中。然后在icon.xml
和res/drawable-en-rCA/
中创建一个res/drawable-fr-rCA/
文件,该文件使用icon_ca.png
元素引用<bitmap>
资源。这允许您只存储一个版本的PNG文件和两个指向它的小型XML文件。 (示例XML文件如下所示。)<强>绘制对象强>
要为现有drawable创建别名,请使用
<bitmap>
元素。例如:<?xml version="1.0" encoding="utf-8"?> <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@drawable/icon_ca" />
如果将此文件另存为
icon.xml
(在备用资源目录中,例如res/drawable-en-rCA/
),则会将其编译为可以引用为R.drawable.icon
的资源,但实际上是R.drawable.icon_ca
资源的别名(保存在res/drawable/
中)。
但是,如果您只是为不同的屏幕密度设置了不同的图标,则无需创建别名。 the table you link to中显示的资源目录限定符为ldpi
,mdpi
和hdpi
。 locating alternative resources(强调添加)时使用限定符:
hdpi
限定符表示该目录中的资源适用于具有高密度屏幕的设备。虽然每个可绘制目录中的图像的大小适合特定的屏幕密度,但文件名是相同的。这样,用于引用icon.png
或background.png
图像的资源ID始终相同,但 Android会选择与当前设备配置最匹配的drawable版本 强>