繁体   English   中英

水平列表视图从URL加载相同的图像(使用毕加索)

[英]Horizontal Listview Loading same images from URL (Using Picasso)

我把这段代码删掉了。 它是一个水平列表视图。 问题是正在加载相同的图像,而不是不同的图像。 可能是什么问题? 我认为毕加索不是这里的问题。 我猜还有其他的东西。

 @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder = null;
//      View timeLineRow = LayoutInflater.from(parent.getContext()).inflate(R.layout.dashboardtimelinerow, null);
        if (convertView == null) {
            LayoutInflater mInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = mInflater.inflate(R.layout.toprecommendationsitem, parent, false);

            holder = new ViewHolder();
            holder.recommimage = (ImageView) convertView.findViewById(R.id.recommimage);
            holder.userImage = (CircularImageView) convertView.findViewById(R.id.userImage);

            convertView.setTag(holder);
        } else
            holder = (ViewHolder) convertView.getTag();
        int i=0;
        for(i=0; i<mArrayListData.size(); i++) {
            if (!mArrayListData.get(i).getDishimageurl().isEmpty()) {
                Picasso.with(mContext)
                        .load(mArrayListData.get(i).getDishimageurl())
                        .resize(172, 172)

                        .into(holder.recommimage);
                break;

            }
        }

        return convertView;
    }

您没有在getView函数内的任何position使用position的值。 getView应该返回位于传递的数组或列表中索引position任何数据的视图。您将想要用类似以下内容的代码替换

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder holder = null;

    if (convertView == null) {
        LayoutInflater mInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = mInflater.inflate(R.layout.toprecommendationsitem, parent, false);

        holder = new ViewHolder();
        holder.recommimage = (ImageView) convertView.findViewById(R.id.recommimage);
        holder.userImage = (CircularImageView) convertView.findViewById(R.id.userImage);

        convertView.setTag(holder);
    } else {
        holder = (ViewHolder) convertView.getTag();
    }

    if (!mArrayListData.get(position).getDishimageurl().isEmpty()) {
        Picasso.with(mContext)
                 .load(mArrayListData.get(position).getDishimageurl())
                 .resize(172, 172)
                 .into(holder.recommimage);
    }

    return convertView;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM