android - Picasso 和 PhotoView Library 将图像加载到 ImageView 中很奇怪

标签 android image picasso

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

但是当 picasso 第一次加载图像时,它会像这样显示图像:

enter image description here

但只要我触摸图像,它就会正确放置

enter image description here

但如果我关闭我的应用程序,它突然不再显示图像,也不会再显示。

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

我正在使用的库:

最佳答案

同时使用 Picasso 和 Photoview 时,我遇到了同样的图像错位问题。

为了解决这个问题,我所做的是在使用 into(view, callback) 而不是仅仅使用 into(view) 来使用 Picasso 加载图像时使用回调。成功加载图像后,我实例化 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);

希望对您有所帮助。问候。

关于android - Picasso 和 PhotoView Library 将图像加载到 ImageView 中很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21749374/

相关文章:

javascript - 在图像预加载期间未检测到错误事件?

css - 在 css 完全加载之前页面看起来很有趣

java - 无法使用 picasso 从 firebase 检索图像

android - 高分辨率背景图像在 Android 中带来性能问题

android-layout - 显示股票行情文字而不通知

java - 当 OnFocusChangeListener 应用于包装的 EditText 时,TextInputLayout 不设置动画

java - Titanium 模块、android 6 权限和覆盖屏幕

android - 根据图片的大小改变图片的分辨率

wpf - 如何绑定(bind)图片源?

android - Picasso 加载位图后,如何为它获取调色板?