0

私が取り組んでいるアプリケーションには多くの画像 (すべてのリスト項目に画像があるリストビュー、画像を含むグリッドビュー、画像のギャラリー) があるため、開発の最後にはドローアブル フォルダーに約 1000 以上の画像があります。現在、drawable フォルダーに約 200 枚の画像があります。

すべての画像を drawable フォルダーに入れるのは正しいですか、それともそれらを追加する最適な方法はどれですか?

画像は次の目的で使用されます。

  • グリッドビュー

  • 各 Gridview アイテムの ListView

  • 各 listView アイテムのギャラリー
4

4 に答える 4

0

あなたのapkはグーグルプレイで50MBを超えることはできませんここに拡張パックのリンクがあります

http://support.google.com/googleplay/android-developer/answer/2481797?hl=en

于 2013-02-23T14:11:38.853 に答える
0

リソースからの画像の読み込みが高速化されました (単に ID による)。
しかし、1000 以上の画像を保存すると、アプリは巨大になります。
したがって、私のアドバイス: 一部の Web サーバーでは画像を zip として保持し、ユーザーが最初にアプリをインストールした後、SD カード フォルダーにダウンロードして解凍する必要があります。

于 2015-04-14T09:53:58.977 に答える
0

扱う画像が多い場合は、assets フォルダに保管しておくとよいでしょう。

drawable フォルダーは、アイコンと背景を保存するために使用されます。画像があまりない場合は、リストとグリッドの画像を保存するために使用できます。これは、drawable の画像がメモリにプリロードされているためです。高解像度の画像が多数ある場合、デバイスの RAM メモリをすべて消費する可能性があります。

一方、アセットフォルダーはこの場合に最適です。画像は生の画像として保存され、それらを使用したい場合はビットマップとしてビルドする必要があるため、作成するときにそれらをビルドして使用する責任があります。それらが必要です。

アセットに画像を保存するということは、大量の高解像度画像を含むリストまたはグリッドをロードすると、いずれにせよ RAM がいっぱいになるため、メモリ消費に注意する必要があることを意味します。ホルダーを使用してリストとグリッドを作成することをお勧めします。これにより、項目が画面に表示されていないときは常に RAM に保存されません。

また、複数の高解像度画像を同時に画面に表示する必要がある場合は、BitmapFactory.options.inSampleSize でそれらを構築することをお勧めします。これにより、構築しようとしているビットマップにサイズ パラメーターを渡すことができるため、格納するコンテナーのサイズに比べて大きすぎるビットマップを構築する必要がなくなります。

于 2015-04-14T09:27:38.990 に答える
0

SDカードに画像を保存できます。リソース フォルダーに格納すると、アプリのサイズが大きくなります。

于 2013-02-23T11:14:23.470 に答える