毕加索和PhotoView库加载图像到奇怪的ImageView

我使用Picasso库将图像加载到ImageView中,然后使用PhotoView库将缩放和平移等添加到ImageView中。

毕加索第一次加载图像时,会显示如下图像:

在这里输入图像说明

但只要我触摸图像正确的地方

在这里输入图像说明

但是,如果我closures我的应用程序,它突然不再显示图像,并不会。

我的主要活动: http : //pastebin.com/5H4zAgH

我正在使用的库:

  • http://square.github.io/picasso/
  • https://github.com/chrisbanes/PhotoView

Solutions Collecting From Web of "毕加索和PhotoView库加载图像到奇怪的ImageView"

同时使用毕加索和Photoview的时候,我也遇到了同样的问题。

为了解决这个问题,我所做的就是在使用毕加索into(view, callback)而不是into(view)加载图像时使用into(view, callback) 。 一旦图像加载成功,我实例化PhotoViewAttacher对象或调用update()方法。

这里有一个代码示例:

 Callback imageLoadedCallback = new Callback() { @Override public void onSuccess() { if(mAttacher!=null){ mAttacher.update(); }else{ mAttacher = new PhotoViewAttacher(mImageView); } } @Override public void onError() { // TODO Auto-generated method stub } }; Picasso.with(mContext) .load(mImageUrl) .into(mImageView,imageLoadedCallback); 

我希望这有帮助。 问候。

我也有同样的问题。 我通过使用PhotoView而不是ImageView解决了它,并从我的代码中删除了PhotoViewAttacher

在布局文件中(如果使用布局):

 <uk.co.senab.photoview.PhotoView android:id="@+id/your_photo_view" android:layout_width="match_parent" android:layout_height="match_parent" ... /> 

在你的代码中:

 PhotoView photoView = (PhotoView) findViewById(R.id.your_photo_view); Picasso.with(context) .load(file) ... .into(photoView); 

现在一切都必须正确(至less对我来说是这样)!