我正在使用称为ScrollGalleryView的VEINHORN库加载图像列表。 代码如下:
@Override
public void loadMedia(Context context, final ImageView imageView, final MediaLoader.SuccessCallback callback) {
Picasso.get()
.load("file://" + uri)
.placeholder(R.drawable.placeholder_image)
.fit().centerInside()
.into(imageView, new ImageCallback(callback));
}
@Override
public void loadThumbnail(Context context, final ImageView thumbnailView, final MediaLoader.SuccessCallback callback) {
Picasso.get()
.load("file://"+uri)
.resize(thumbnailWidth == null ? 100 : thumbnailWidth,
thumbnailHeight == null ? 100 : thumbnailHeight)
.placeholder(R.drawable.placeholder_image)
.centerInside()
.into(thumbnailView, new ImageCallback(callback));
}
这是将收集的图像加载到PicassoLoader的代码:
for (String uri : uriList) {
infoImages.add(MediaInfo.mediaLoader(new PicassoImageLoader(uri)));
scrollGalleryView.addMedia(MediaInfo.mediaLoader(new PicassoImageLoader(uri))); }
设备处于“人像”状态时,一切正常,但在“风景”中,毕加索不能很好地使用 fit()。centerInside()。图像的高度大于设备屏幕的高度。
但是,当您滚动到图库中的下一幅图像并返回到上一幅图像时, fit()。centerInside()可以正常工作,即height与屏幕的高度匹配。返回纵向模式后,图像与父母的宽度和高度不匹配,就像第二张照片一样。