2016-07-30 5 views
1

私は自分のアダプターを使ってリストビューを画像とテキストで埋めています。私は3つのパラメータ(ContextString[]、およびいくつかの画像配列)を取るアダプタをします。サーバーコールからイメージの配列を格納しますか?

ただし、このクラスを設定する方法は不明です。

イメージを取得するためにサーバー呼び出しを行う場合、アダプタに渡すために配列に格納するのが良い方法はありますか?

+0

画像の束をメモリに保存しようとすると、ごくわずかでない限り、アプリがクラッシュする可能性があります。小さなサムネイルの場合は大丈夫かもしれませんが、サイズが大きい場合は、ストレージに保存して、ファイル名の配列などを渡す必要があります。 – nasch

答えて

0

アダプタに表示するカスタムクラスを定義できます。

class AdapterData { 
    String text; 
    String url; // Some image url from a web service 

    // Or, if you are loading images from disk 
    // int resourceId; 

    public AdapterData(String s, String url) { 
     // TODO 
    } 
} 

その後には、ArrayListを構築し、あなたのWebサービスから検索結果を取得すると、これはListView、ないRecyclerViewアダプタ

class MyAdapter extends ArrayAdapter<AdapterData> { 
    private ArrayList<AdapterData> mData; 
    private Context mContext; 

    public MyAdapter(Content c, ArrayList<AdapterData> data) { 
     super(c, 0, data); 
     this.mContext = c; 
     this.mData = data; 
    } 

    // TODO: Implement getView 
} 

ですArrayAdapter<AdapterData>

を実装し、そのリストでアダプタを初期化します。

関連する問題