【问题标题】:UIImageView is rotated after taking picture from camera从相机拍照后 UIImageView 旋转
【发布时间】:2013-03-01 21:46:26
【问题描述】:

我在 iPad 应用程序中看到了一些奇怪的行为。我有一个 UIImageView,我正在从相机中捕捉。在纵向模式下,当我响应 didFinishPickingMediaWithInfo 事件时,它会正确显示在 UIImageView 中。但是,当我稍后返回 UIIMageView 以重新显示保存的照片时,它会自动将图像旋转 90 度。旋转设备继续显示旋转 90 度的图像。

有没有办法确定拍摄图像时使用的方向,是否应该使用该方法重新显示图像?

任何帮助将不胜感激。我进行了搜索,但找不到与此相关的任何内容。

【问题讨论】:

  • 请发布您用于保存照片并重新显示照片的代码,以便我们知道您的问题可能出在哪里......
  • 尝试使用 iPod 以不同的方向(如纵向倒置)拍照,看看这对行为有何影响。查看您从保存的图像创建的 UIImage 的 imageOrientation 属性。我相信您会发现图像是存储旋转的。如果您要发布如何保存然后获取图像(例如,它们是沙箱中的文件还是照片库中的 ALAsset?),那么也许有人可以提供更多关于旋转它们的帮助。
  • 方向信息可以存储在图像的 EXIF 数据中 - UIImageView 将尝试尊重这一点。这个帖子很好地解决了这个问题:stackoverflow.com/questions/5427656/…

标签: ios xcode uiimageview


【解决方案1】:

我已经准备好了。

的回复

iOS UIImagePickerController result image orientation after upload

为我工作。捕获图像后,我立即根据此线程上的代码示例检查旋转并根据需要进行调整。

感谢所有回复!

【讨论】:

    【解决方案2】:

    试试这个: 将此添加到 viewWillAppear 或您想要的任何位置:

    [self updateLayoutForNewOrientation: self.interfaceOrientation];
    

    并添加此方法:

    - (void) updateLayoutForNewOrientation: (UIInterfaceOrientation) orientation {
    if (UIInterfaceOrientationIsLandscape(orientation)) {
    // do something
        } else {
    //do something
       }
    }
    

    【讨论】:

    • 你明白这个问题了吗?
    • 如果您要对某个答案投反对票,不妨提出更具建设性的批评意见。
    猜你喜欢
    • 1970-01-01
    • 2015-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-12
    • 2016-06-10
    • 1970-01-01
    相关资源
    最近更新 更多