6

drawable-xlarge-mdpi と drawable-sw600dp-mdpi の両方に同じ画像リソース/ドローアブルを提供したいと考えています。

これを行う唯一の方法は、 res/ の下に 2 つのフォルダーを作成し、同じリソースのセットを各フォルダーにコピーすることです。

レイアウトを使用すると、エイリアシングを行うことができます。つまり、特定の修飾子を使用して values フォルダーに layout.xml というファイルを作成し、両方の修飾子の単一のレイアウト ファイルを指すように項目を追加します。

  • 値-xlarge\values.xml
  • 値-sw600dp\values.xml

両方のファイルの内容は次のようになります。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <item name="activity_shows" type="layout">@layout/activity_shows_tablet</item>
</resources>

(xlarge に一致するデバイスまたは sw600dp に一致するデバイスは、"activity_shows" のレイアウト ファイルとして activity_shows_tablet.xml を使用するようになりました)

ドローアブルに同様のアプローチはありますか?

4

1 に答える 1

13

ドローアブルに同様のアプローチはありますか?

レイアウトの場合とまったく同じように機能するはずです

pngリソースをデフォルトのフォルダに入れる

res/drawable/largescreen.png
res/drawable/smallscreen.png

.xmlを参照するリソースを作成pngする

res/drawable/image.xml
res/drawable-xlarge-mdpi/image.xml
res/drawable-sw600dp-mdpi/image.xml

のようなものはどこimage.xmlですか(ドキュメント

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/largescreen" />

次に、pngを直接使用するのと同じようにXMLリソースを使用します

<ImageView
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:src="@drawable/image" />
于 2012-05-02T18:04:37.163 に答える