Android 使用反转大小保持图片纵横比

Android 使用反转大小保持图片纵横比,android,image,video,thumbnails,aspect-ratio,Android,Image,Video,Thumbnails,Aspect Ratio,我面临着一个关于图片大小和纵横比的奇怪情况,但我希望这对一些人来说是显而易见的 我有一个RecyclerView在其中插入图片(和视频),图片的宽度是强制的 (最大宽度/2) 我想做的是保持原始纵横比,并根据宽度值设置图片的高度。然后,我必须从用户私人画廊检索图片的初始大小: BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true;

我面临着一个关于图片大小和纵横比的奇怪情况,但我希望这对一些人来说是显而易见的

我有一个
RecyclerView
在其中插入图片(和视频),图片的宽度是强制的 (最大宽度/2)

我想做的是保持原始纵横比,并根据宽度值设置图片的高度。然后,我必须从用户私人画廊检索图片的初始大小:

BitmapFactory.Options options = new BitmapFactory.Options();
            options.inJustDecodeBounds = true;
            BitmapFactory.decodeFile(file, options);
            fileHeight = options.outHeight;
            fileWidth = options.outWidth;
我计算了宽度和高度之间的系数,但我发现当图片大小颠倒时,它无法工作。 我在几个相机上做了一些测试,一些相机以720x1280和其他1280x720分辨率拍照,但照片完全相同

然后,我尝试根据初始大小反转计算因子,但由于图片格式(横向…)的原因,它不起作用。视频也是如此


我怎样才能做到这一点

“它不能工作”和“它不能工作”不足以帮助人们理解你的问题。相反,描述确切观察到的行为是什么以及预期/预期的行为应该是什么。对于UI问题,屏幕截图或视频通常很有用。包括任何错误消息的确切文本,包括所有异常(如果适用),以及堆栈跟踪指向的代码行。请看和。我理解这个问题,因为我面临着同样的问题。他想知道一种方法,可以告诉你照片或视频的宽度和高度是否颠倒。它发生在一些内置摄像头的设备上。。。您拍摄了一张照片,详细信息显示分辨率为4100x1900,但显示为1900x4100。问题是,相机处理旋转,即使是错误的,也会给出4100px的宽度,因为照片是在全屏垂直拍摄的。因此,如果检索图片的宽度和高度,则预览错误,只有人眼才能知道是否反转。