Java Android 滑动调整图像大小

我想调整 glide 使用的图像大小。现在我使用毕加索,但我想使用滑行


private void resizeImg(Context context, final File file, int targetSize, Handler handler) {

        final BitmapFactory.Options options = new BitmapFactory.Options();

        options.inJustDecodeBounds = true;

        BitmapFactory.decodeFile(file.getPath(), options);


        float ratio = Math.max(options.outWidth, options.outHeight) / (float) targetSize;


        //don't scale image that is smaller than targetSize

        if (ratio < 1) return;


        int dstWidth = (int) (options.outWidth / ratio);

        int dstHeight = (int) (options.outHeight / ratio);


        PicassoTargetFactory.getInstance().putTarget(file, handler);


        Picasso.with(context)

                .load(file)

                .error(R.drawable.ic_delete)

                .resize(dstWidth, dstHeight)

                .into(PicassoTargetFactory.getInstance().getTarget(file));

        ArrayList<String> paths = new ArrayList<>();

        files = new ArrayList<>();

        files.add(mCurrentPhotoPath);

        for (File f : files) {

            paths.add(f.getAbsolutePath());

        }

        mdb.insertPhotos(paths);


    }

我怎么能做到这一点?在 piccaso 上有时我有一个剪切图像


慕虎7371278
浏览 107回答 3
3回答

互换的青春

首先,在 Gradle 中添加 Glide 库。然后,你可以像这样使用它Glide&nbsp;&nbsp;.with(context).load("your image path").override(600, 200) // resizes the image to these dimensions (in pixel). resize does not respect aspect ratio.into(imageViewResize);

汪汪一只猫

在最新版本的 Glide 中,必须通过RequestOptions访问覆盖。Glide.with(context).load(path).apply(new RequestOptions().override(600, 200)).into(imageViewResizeCenterCrop);

慕后森

我认为你应该给你的方法一个单一的责任。您想要一种调整图像大小的方法,但您的方法实际上做得更多。请把东西分开private Bitmap resizeBitmap(Bitmap b, int w, int h) {&nbsp; &nbsp; // Your code.&nbsp; &nbsp; return myResizedBitmap;}然后会更容易帮助你
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java