2

我正在使用 Fedor 的延迟加载,但我似乎无法调整它来填充画廊而不是列表视图。我的主要问题似乎与不必膨胀单独的布局有关。如何将图像结果直接传递到图库?

这是我当前的 getview 不起作用

 public View getView(int position, View convertView, ViewGroup parent) {
    View vi=convertView;
    if(convertView==null){
    ImageView image= new ImageView(context);
    image.setLayoutParams(new Gallery.LayoutParams(150, 100));
    image.setScaleType(ImageView.ScaleType.FIT_XY);
    imageLoader.DisplayImage(data[position], activity, image);
  }
    return vi;
  }

并且错误是库中的空指针异常。

关于适当调整的任何想法?

谢谢

4

2 回答 2

2

我使用以下方法让它工作:

 public View getView(int position, View convertView, ViewGroup parent) {
    View vi=convertView;
    if(convertView==null){
        vi = inflater.inflate(R.layout.galitem, null);
    ImageView image=(ImageView)vi.findViewById(R.id.galimage);
    imageLoader.DisplayImage(data[position], activity, image);
    }

    return vi;

}

我在别处设置了参数。

于 2011-09-08T13:40:47.970 回答
0

尝试这个:

public View getView(int position, View convertView, ViewGroup parent) {
    ImageView imgView;
    if (convertView == null) {
        imgView = new ImageView(context);
        imgView.setLayoutParams(new Gallery.LayoutParams(150, 100));
        imgView.setScaleType(ImageView.ScaleType.FIT_XY);
    } else {
        imgView = convertView;
    }

    imageLoader.DisplayImage(data[position], activity, imgView);

    return imgView;
}
于 2011-09-06T22:21:31.037 回答