Android DRAWABLE-V21 中的 drawble-xhdpi、drawable-xxhdpi、drawable-xxxhdpi 子文件夹也适用于 DRAWABLE-V23?
Android drawble-xhdpi, drawable-xxhdpi, drawable-xxxhdpi subfolders inside DRAWABLE-V21 also for DRAWABLE-V23?
我知道无法在 drawable-v21 中添加子文件夹。
但是我将如何完成 android 以在 drawable-v21 中获取不同大小的资源。
例如:
drawable-xhdpi, drawable-xxhdpi, drawable-xxxhdpi.
我需要这种行为 -
(ic.png应该是同一张图片不同像素大小)
drawable-v21
drawable-xhdpi
ic.png
drawable-xxhdpi
ic.png
drawable-xxxhdpi
ic.png
drawable-v23
drawable-xhdpi
ic.png
drawable-xxhdpi
ic.png
drawable-xxxhdpi
ic.png
我怎样才能做到这一点?
更新:
我意识到我可以通过这种方式解决我的问题:
可绘制
- ic_vector.xml
- ic.png (1.0x)
drawable-v21
- outterDrawable.xml
drawable-v23
- outterDrawable.xml
drawable-xhdpi
- ic.png (1.0x)
drawable-xxhdpi
- ic.png (2.0x)
drawable-xxxhdpi
- ic.png (3.0x)
其中 outterDrawable (drawable-v21) 看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<bitmap android:src="@drawable/ic" android:gravity="center" />
</item>
</layer-list>
其中 outterDrawable (drawable-v23) 看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:src="@drawable/ic_vector" android:gravity="center"/>
</layer-list>
让我知道是否有不同的解决方案。
资源限定符可以相互组合使用(尽管组合它们时必须遵循特定的顺序)。此处列出了所有限定符及其优先顺序:https://developer.android.com/guide/topics/resources/providing-resources#AlternativeResources
因此,您可以使用如下目录结构:
res/
drawable-xhdpi-v21/
ic.png
drawable-xhdpi-v24/
ic.png
drawable-xxhdpi-v21/
ic.png
drawable-xxhdpi-v24/
ic.png
然而,您自己的回答暗示用于 v21
和 v24
的 ic.png
文件没有区别。在这种情况下,根本不需要指定版本:
res/
drawable-xhdpi/
ic.png
drawable-xxhdpi/
ic.png
我知道无法在 drawable-v21 中添加子文件夹。 但是我将如何完成 android 以在 drawable-v21 中获取不同大小的资源。 例如: drawable-xhdpi, drawable-xxhdpi, drawable-xxxhdpi.
我需要这种行为 - (ic.png应该是同一张图片不同像素大小)
drawable-v21
drawable-xhdpi
ic.png
drawable-xxhdpi
ic.png
drawable-xxxhdpi
ic.png
drawable-v23
drawable-xhdpi
ic.png
drawable-xxhdpi
ic.png
drawable-xxxhdpi
ic.png
我怎样才能做到这一点?
更新:
我意识到我可以通过这种方式解决我的问题:
可绘制
- ic_vector.xml
- ic.png (1.0x)
drawable-v21
- outterDrawable.xml
drawable-v23
- outterDrawable.xml
drawable-xhdpi
- ic.png (1.0x)
drawable-xxhdpi
- ic.png (2.0x)
drawable-xxxhdpi
- ic.png (3.0x)
其中 outterDrawable (drawable-v21) 看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<bitmap android:src="@drawable/ic" android:gravity="center" />
</item>
</layer-list>
其中 outterDrawable (drawable-v23) 看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:src="@drawable/ic_vector" android:gravity="center"/>
</layer-list>
让我知道是否有不同的解决方案。
资源限定符可以相互组合使用(尽管组合它们时必须遵循特定的顺序)。此处列出了所有限定符及其优先顺序:https://developer.android.com/guide/topics/resources/providing-resources#AlternativeResources
因此,您可以使用如下目录结构:
res/
drawable-xhdpi-v21/
ic.png
drawable-xhdpi-v24/
ic.png
drawable-xxhdpi-v21/
ic.png
drawable-xxhdpi-v24/
ic.png
然而,您自己的回答暗示用于 v21
和 v24
的 ic.png
文件没有区别。在这种情况下,根本不需要指定版本:
res/
drawable-xhdpi/
ic.png
drawable-xxhdpi/
ic.png