我尝试从movieDatabaseApi获取数据并使用Picasso库在GridView中显示它。 使用AsyncTask我设法获得了我需要的URL(我可以在日志中看到它们)。 从此,我迷失了。
@Override
protected void onPostExecute(String[] arrayList) {
Log.v(LOG_TAG,arrayList[0]);
mImageAdapter = new ImageAdapter(getActivity(), arrayList);
}
我已将我的ImageAdapter更改为接受此数组作为参数,但尝试从此位置将适配器设置为gridView会给我NullPointerException。即使我设法附加新的适配器,下一步是什么?如何在适配器中访问此数组? 这是我目前的适配器代码:
public class ImageAdapter extends BaseAdapter {
private Context mContext;
private String[] resultingArray;
public ImageAdapter(Context c, String[] arrayList) {
mContext = c;
resultingArray = arrayList;
}
@Override
public int getCount() {
return resultingArray.length;
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
// create a new ImageView for each item referenced by the Adapter
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView;
String url="zero";
url = resultingArray[position];
Log.v("check urls",url);
if (convertView == null) {
// if it's not recycled, initialize some attributes
imageView = new ImageView(mContext);
imageView.setAdjustViewBounds(true);
} else {
imageView = (ImageView) convertView;
}
Picasso.with(mContext).load(url).into(imageView);
return imageView;
}
}
答案 0 :(得分:0)
您不显示任何要显示图像的网格项目..使用自己的ItemLayout创建自定义适配器
看看这个
http://www.learn2crack.com/2014/01/android-custom-gridview.html