0

オブジェクトを配列に格納し、リストビューを介してユーザーに表示する単純な Android アプリケーションに取り組んでいます。各オブジェクトには、写真と 1 つのテキスト フィールドが含まれます。デモンストレーションの目的で、この配列にハードコーディングされたオブジェクトを事前に入力したいと思います。

問題は、通常、画像はカメラ インターフェースを介して取得され、各オブジェクトはその画像へのパスのみを保存することです。ハードコードされた画像をドローアブルとして追加できますが、ファイル パスがありません。アプリの初期化時に、ドローアブルをビットマップに変換し、ビットマップをSDカードに保存することはできましたが、それは複雑すぎて正解ではないようです...

これらの画像をファイル ストレージに格納して、URI 経由で参照できるようにする最善の方法についてのアイデアはありますか?

ありがとう!

4

2 に答える 2

0

ネットワークから画像をロードする際に、これから背景を確認してください。

カメラから画像を取得しますが、mimetype = img/* のリソース チューザーを実行すると、セレクターはローカル カメラ (ギャラリー) ストレージを他の写真、コンテンツ プロバイダーとマージするだけであることに注意してください。写真の一般的なセレクターの例は、「Evernote」にあります。ここでは、2X2 グリッドのコンポーザ ビューに移動し、「添付ファイル」アイコンをタッチします...これが写真セレクターです...

つまり、写真を管理し、imageViews で表示するための一般的な方法を理解するのに役立ちます。

通常、imgView の引数と画像ソースの URI を持つインターフェイスを持つ lazyLoader があります。'loadImage(view, uri) への呼び出しの裏で、実装は次のことをチェックします。

ビットマップはすでに memCache にありますか?

ビットマップをバックアップするローカルファイルは、この目的のために予約されたフォルダーに存在しますか?

上記のいずれでもない場合は、ネットワーク全体から img のバイト配列を取得します (または、あなたの場合は camera からバイトを取得します)。

あなたの質問は少し異なりますが、IMO、画像の標準的な慣行が適用される場合があり、画像表示用の多くのライブラリの1つを特定の要件に適合させることができます。

于 2013-12-07T21:38:26.280 に答える