46

assets(drawable フォルダーではなく) フォルダー内のサブディレクトリから drawable をロードできますか?

4

8 に答える 8

107

Hope this help:

Drawable d = Drawable.createFromStream(getAssets().open("Cloths/btn_no.png"), null);
于 2011-02-22T19:07:21.307 に答える
8

これを使用することをお勧めします

 Drawable.createFromResourceStream(resources,new TypedValue(), resources.getAssets().open(filename), null)

リソースのおかげで適切にスケーリングされたドローアブルを返します...

于 2011-05-01T15:32:55.123 に答える
2

はい、 createFromStream()メソッドを使用してDrawableからオブジェクトを作成できます。InputStream

于 2011-02-03T11:26:08.997 に答える
0

私は RecyclerView アダプターで作業していましたが、David の回答がうまくいかないことがわかりました (何らかの理由で、asset.open何をインポートしても未解決のままでした)。

だから私はこれが私のために働くことがわかった(Kotlinコード)

val d = Drawable.createFromStream(context?.assets?.open("imageData/${imageName}.png"), null)

これが私のディレクトリです。資産は資産フォルダーから始まります。資産フォルダーの作成方法に関するリンクは次のとおりです。

ここに画像の説明を入力

于 2020-04-21T12:48:41.997 に答える
-1

このバージョンではできません。ドローアブルフォルダー内にサブフォルダーを作成すると、xmlファイルで使用できなくなり、android:srcを使用したときに認識されなくなります。

このスレッドを見てください:Androidのドローアブルディレクトリにサブディレクトリを含めることはできますか?

于 2011-02-03T10:32:21.963 に答える