簡體   English   中英

DRAWABLE-V21 中的 Android 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 應該是具有不同像素大小的同一圖像)

  • 可繪制-v21

    • 可繪制的 xhdpi

      ic.png

    • 可繪制-xxhdpi

      ic.png

    • 可繪制的xxxhdpi

      ic.png

  • 可繪制-v23

    • 可繪制的 xhdpi

      ic.png

    • 可繪制-xxhdpi

      ic.png

    • 可繪制的xxxhdpi

      ic.png

我怎樣才能做到這一點?

資源限定符可以相互組合使用(盡管在組合它們時必須遵循特定的順序)。 此處列出了所有限定符及其優先順序: 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

但是,您自己的回答暗示用於v21v24ic.png文件之間沒有區別。 在這種情況下,根本不需要指定版本:

res/
    drawable-xhdpi/
        ic.png
    drawable-xxhdpi/
        ic.png

更新:

我意識到我可以這樣解決我的問題:

  • 可繪制的

    • ic_vector.xml
    • ic.png (1.0x)
  • 可繪制-v21

    • 外部繪圖.xml
  • 可繪制-v23

    • 外部繪圖.xml
  • 可繪制的 xhdpi

    • ic.png (1.0x)
  • 可繪制-xxhdpi

    • ic.png (2.0x)
  • 可繪制的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>

讓我知道是否有不同的解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM