0

当用户从“照片”应用或相机共享照片时,我在 iOS 共享扩展中遇到问题。

imageRotation一旦图像加载到我的应用程序中,我就使用该属性来旋转图像。

switch (img.imageOrientation) {
    case UIImageOrientationRight:
        rotation = @"90";
        break;

    case UIImageOrientationUp:
        rotation = @"0";
        break;

    case UIImageOrientationDown:
        rotation = @"180";
        break;

    case UIImageOrientationLeft:
        rotation = @"270";
        break;
}

在大多数设备上,这工作正常。但是,在我的个人设备(13.4.1 的 iPhone Xr)上,UIImage已经适当旋转,并且使用 switch 语句中的旋转值过度旋转(因此UIImageOrientationDown在旋转 180 度后实际上会倒置显示)。如果我不在我的设备上旋转图像,则图像的方向都是正确的,但在其他设备上确实需要进行旋转。我无法在UIImage我可以关闭以防止旋转的内容中找到任何内容。

有没有其他人遇到过这种情况?这是我设备上的设置吗?有什么东西可以用来确定是否应该旋转图像?

提前致谢。

编辑:这里的示例代码缺少“镜像”枚举选项,但它们也没有出现。在有问题的设备上,我会根据拍照时相机的握持方式进行适当的旋转,但不需要执行旋转

4

1 回答 1

-1

这是因为你还没有实现所有的情况。欲了解更多信息:https ://developer.apple.com/documentation/uikit/uiimage/orientation

这与设备的方向相同。

于 2020-05-18T05:01:19.707 回答