【问题标题】:Android: Volley Image loader with galleryAndroid:带有画廊的 Volley 图像加载器
【发布时间】:2016-07-25 04:28:15
【问题描述】:

我正在尝试使用 Volley 的 ImageLoader 来实现 Gallery 元素。在以下请求中,我收到了一个包含一些 URL 的列表,这些 URL 将显示在图库中。我的问题是图库没有显示任何内容。

RestApiAdapter.getImages("Food", new RestApiAdapter.RestApiCallBack<List<String>>() {
    @Override
    public void execute(List<String> object) {
        GaleriaAdapter gAdapter = new GaleriaAdapter(foodFragmentView.getContext());
        gAdapter.setImages(object);

        ((Gallery) foodFragmentView.findViewById(R.id.gallery)).setAdapter(gAdapter);
    }
});

现在是适配器

import com.android.volley.toolbox.ImageLoader;
...
@Override
public View getView(int position, View convertView, ViewGroup parent) {

    String url = (String) getItem(position);
    ImageLoader imgLoader = VolleyRequest.getInstance(null).getImageLoader();

    NetworkImageView imgView = new NetworkImageView(context);
    imgView.setImageUrl(url, imgLoader);

    return imgView;
}

【问题讨论】:

    标签: android gallery android-volley image-loading


    【解决方案1】:

    将适配器添加到 Grid 后,您是否 notifyDataSetChange()?

    gAdapter.notifyDataSetChanged();
    

    【讨论】:

    • 这里没有用,但我找到了答案,但还是谢谢你
    【解决方案2】:

    一段时间后,我设法找出了问题所在。基本上它缺少我假设的请求本身

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
    
        String url = (String) getItem(position);
        NetworkImageView imgView = new NetworkImageView(context);
        ImageLoader imgLoader = VolleyRequest.getInstance(null).getImageLoader();
    
        // This line of code
        imgLoader.get(url, ImageLoader.getImageListener(imgView, LOADING_IMG, ERROR_IMG));
    
        imgView.setImageUrl(url, imgLoader);
        return imgView;
    }
    

    来源:http://www.truiton.com/2015/03/android-volley-imageloader-networkimageview-example/

    【讨论】:

      猜你喜欢
      • 2011-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多