首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android drawble xhdpi,DRAWABLE xxhdpi,DRAWABLE xxhdpi子文件夹中的DRAWABLE v21也适用于DRAWABLE v23?

Android drawble xhdpi,DRAWABLE xxhdpi,DRAWABLE xxhdpi子文件夹中的DRAWABLE v21也适用于DRAWABLE v23?
EN

Stack Overflow用户
提问于 2021-03-04 18:00:41
回答 2查看 179关注 0票数 0

我知道不可能在draable-v21中添加子文件夹。但是,我将如何实现android,以便在可绘制的v21中占用不同大小的资源。例如:drawable xhdpi,drawable xhdpi,drawable xxhdpi。

我需要这种行为- (ic.png应该是具有不同像素大小的相同图像)

  • drawable-v21

代码语言:javascript
复制
- drawable-xhdpi

ic.png

代码语言:javascript
复制
- drawable-xxhdpi

ic.png

代码语言:javascript
复制
- drawable-xxxhdpi

ic.png

  • drawable-v23

代码语言:javascript
复制
- drawable-xhdpi

ic.png

代码语言:javascript
复制
- drawable-xxhdpi

ic.png

代码语言:javascript
复制
- drawable-xxxhdpi

ic.png

我怎样才能做到这一点?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-04 19:35:42

资源限定符可以相互结合使用(尽管在组合它们时必须遵循特定的顺序)。所有限定符及其优先顺序都在这里列出:https://developer.android.com/guide/topics/resources/providing-resources#AlternativeResources

因此,您可以使用这样的目录结构:

代码语言:javascript
复制
res/
    drawable-xhdpi-v21/
        ic.png
    drawable-xhdpi-v24/
        ic.png
    drawable-xxhdpi-v21/
        ic.png
    drawable-xxhdpi-v24/
        ic.png

但是,您自己的答案意味着用于v21v24v21文件之间没有区别。在这种情况下,根本不需要指定版本:

代码语言:javascript
复制
res/
    drawable-xhdpi/
        ic.png
    drawable-xxhdpi/
        ic.png
票数 1
EN

Stack Overflow用户

发布于 2021-03-04 18:30:34

更新:

我意识到我可以这样解决我的问题:

  • drawable

代码语言:javascript
复制
- ic\_vector.xml
- ic.png (1.0x)

  • drawable-v21

代码语言:javascript
复制
- outterDrawable.xml

  • drawable-v23

代码语言:javascript
复制
- outterDrawable.xml

  • drawable-xhdpi

代码语言:javascript
复制
- ic.png (1.0x)

  • drawable-xxhdpi

代码语言:javascript
复制
- ic.png (2.0x)

  • drawable-xxxhdpi

代码语言:javascript
复制
- ic.png (3.0x)

其中,outterDrawable (draable-v21)如下所示:

代码语言:javascript
复制
<?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 (draable-v23)如下所示:

代码语言:javascript
复制
<?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>

让我知道有一个不同的解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66480563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档