我正在尝试在列表视图的每一行中创建图像的水平滚动视图。我正在使用毕加索来获取图像。我的问题是,在滚动时,horizontalscrollview 中的图像会变得混乱。我希望使用: into(android.widget.ImageView target, Callback callback) 方法可以帮助 imageview 同步,但没有。
编码:
公共类 RParrayAdapter 扩展 ArrayAdapter {
static class ViewHolder {
ImageView photoThumbIv1;
ImageView photoThumbIv2;
int position;
}
private final Context context2;
int mWidth;
int mHeight;
Callback callback;
ViewHolder viewHolder;
public RParrayAdapter(Context context2, ArrayList<Listing2> listings2) {
super(context2, R.layout.list_item, listings2);
this.context2 = context2;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
final Listing2 listing2 = getItem(position);
if (convertView == null) {
viewHolder = new ViewHolder();
LayoutInflater inflater = LayoutInflater.from(getContext());
convertView = inflater.inflate(R.layout.list_item, null);
viewHolder.photoThumbIv1 = (ImageView) convertView
.findViewById(R.id.photo_thumb_1);
viewHolder.photoThumbIv2 = (ImageView) convertView
.findViewById(R.id.photo_thumb_2);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
DisplayMetrics metrics = new DisplayMetrics();
metrics = getContext().getResources().getDisplayMetrics();
mWidth = (int) (.9 * (metrics.widthPixels));
mHeight = (int) (mWidth / 1.33);
if (listing2.thumbnail_image_url1 != null) {
Picasso.with(context2).load(listing2.thumbnail_image_url1)
.resize(mWidth, mHeight).centerCrop()
.into(viewHolder.photoThumbIv1, new Callback() {
@Override
public void onSuccess() {
viewHolder.photoThumbIv2
.setVisibility(View.VISIBLE);
}
@Override
public void onError() {
}
});
}
if (listing2.thumbnail_image_url2 != null) {
Picasso.with(context2).load(listing2.thumbnail_image_url2)
.resize(mWidth, mHeight).centerCrop()
.into(viewHolder.photoThumbIv2, new Callback() {
@Override
public void onSuccess() {
viewHolder.photoThumbIv2
.setVisibility(View.VISIBLE);
}
@Override
public void onError() {
}
});
}
Picasso.with(context2).toString();
}
return convertView;
}
}
感谢您提供任何帮助。