我正在使用自己的适配器来填充带有图像和文本的列表视图。我希望适配器接收3个参数(Context
,String[]
和一些图像数组。)
但是,我不确定如何设置这个课程。
如果我进行服务器调用以获取图像,是否有一种很好的方法将它们存储在一个数组中以传入适配器?
答案 0 :(得分: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
}
}
然后实施ArrayAdapter<AdapterData>
注意这适用于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
}
从Web服务获取结果时,构建一个ArrayList并使用该列表初始化适配器。