Java 如何在android中缩放imageview和保留比率?

Java 如何在android中缩放imageview和保留比率?,java,android,imageview,android-imageview,Java,Android,Imageview,Android Imageview,在我的android应用程序中,我想创建一个imageview,并将其高度设置为一定的值。需要自动设置宽度,以便比率与原始图像尺寸比率匹配 到目前为止,我得到的是: ImageView img = new ImageView(context); img.setTag(Integer.toString(fish.getId(), 10)); img.setAdjustViewBounds(true);

在我的android应用程序中,我想创建一个imageview,并将其高度设置为一定的值。需要自动设置宽度,以便比率与原始图像尺寸比率匹配

到目前为止,我得到的是:

            ImageView img = new ImageView(context);
            img.setTag(Integer.toString(fish.getId(), 10));
            img.setAdjustViewBounds(true);
            LinearLayout.LayoutParams imageviewparams = new LinearLayout.LayoutParams(IMAGESIZE, IMAGESIZE);
            imageviewparams.setMargins(20, 20, 20, 20);
            imageviewparams.gravity = Gravity.CENTER_HORIZONTAL;
            img.setLayoutParams(imageviewparams);
它不太好用

有人知道如何让它工作吗


谢谢。

你能发布一张期望的图像和当前结果图像吗?为什么不在执行作业之前计算出这个比率,然后手动将宽度值设置为:newHeight*(预宽/预重)