我想定制一个可绘制的,例如 /drawable/image.png
仅适用于AP 19至21.对于后来的API(在22之后,包括I' d喜欢drawable是不同的)。我需要创建目录吗? 绘制-V19, 绘制-V20, 绘制-V21, drawable-v22(对于其他人?) ?我有点不清楚它是如何工作的......
答案 0 :(得分:6)
您应该只需要为设置不同资源的版本创建目录。所以你的资源目录看起来像:
res/
drawable/ --> SDK version below 19
image.png
drawable-v19/ --> SDK version between 19 and 21 (including both)
image.png
drawable-v22/ --> SDK version 22 and greater
image.png
编辑:似乎就是这样工作的。我已经为sdk 19和22设置了一个带有strings.xml的小项目,启动了两个模拟器,使用sdk 21和25. SDK 21一个显示了v19字符串中的字符串,SDK 25显示了v22字符串中的字符串。这是一张结果图:
希望它有所帮助。 (无法使用低于19的sdk测试它,但是应该从默认文件中获取值,因为不适用限定符。)
答案 1 :(得分:0)
您可以为每个版本的每个自定义图像创建drawable-v19,drawable-v20,drawable-v21,drawable-v22等可绘制文件夹。如果应用程序在其中一个设备上运行,则会从这些匹配的版本自定义相应文件夹中选择,或者返回到通用可绘制文件夹。