我使用通用图像加载器库来加载一组图像和 TouchImageView 以允许缩放。我决定用 picasso 替换 Universal Image Loader。一切正常,除了现在图像围绕比图像稍大的框架缩放。

@Override
    public Object instantiateItem(ViewGroup view, int position) {
        View imageLayout = inflater.inflate(R.layout.item_pager_image, view, false);
        assert imageLayout != null;
        TouchImageView imageView = (TouchImageView) imageLayout.findViewById(R.id.image);
        final ProgressBar spinner = (ProgressBar) imageLayout.findViewById(R.id.loading);
        spinner.setVisibility(View.INVISIBLE);
        Picasso.with(getApplicationContext()).setIndicatorsEnabled(false);
        Picasso.with(getApplicationContext()).load(images[position]).into(imageView,new Callback() {

            @Override
            public void onSuccess() {
                spinner.setVisibility(View.GONE);
            }

            @Override
            public void onError() {

            }
        });
        view.addView(imageLayout, 0);
        return imageLayout;

几个小时以来,我一直为此而头疼。这是 TouchImageView 与 Picasso 的一些问题吗?任何帮助将是可观的。谢谢。

最佳答案

Mahram Foadi 发布了 here 一个很好的解决方案,它也对我有用:

Picasso.with(context).load (someUri).into(new Target () {
   @Override
    public void onBitmapLoaded (final Bitmap bitmap,
        final Picasso.LoadedFrom loadedFrom) {
        someTouchImageView.setImageBitmap (bitmap);
    }

   @Override
    public void onBitmapFailed (final Drawable drawable) {
       Log.d(TAG, "Failed");
    }

   @Override
   public void onPrepareLoad (final Drawable drawable) {
        someTouchImageView.setImageDrawable (drawable);
   }
});

希望这有助于像我们这样的其他人在 Picasso 中使用 TouchImageView ;)

关于android - 使用 Picasso 缩放到帧的 TouchImageView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25870294/

10-11 14:38