2016-07-13 4 views
0

현재 뷰 중 하나에서 사진 라이브러리에서 일정을 가져 와서 앱에 저장하는 앱을 만들고 있습니다. 저장 기능이 정상적으로 작동합니다. 그러나 사용자가 이미지를 선택하면 90도 회전합니다. 예를 들어, 인물 사진을 회전하고 크기를 조정하여 읽기 어렵게 만듭니다. 회전 기능을 비활성화하려면 어떻게해야합니까?사용자가 사진 갤러리에서 이미지를 선택할 때 이미지가 회전합니다.

import UIKit 

class Schedule: UIViewController, UIImagePickerControllerDelegate, 
UINavigationControllerDelegate { 
    @IBOutlet var imageView: UIImageView! 

    let imagePicker = UIImagePickerController() 

    @IBAction func addImage(sender: AnyObject) { 
     imagePicker.allowsEditing = false 
     // Only allow photos to be picked, not taken. 
     imagePicker.sourceType = .PhotoLibrary 

     presentViewController(imagePicker, animated: true, completion: nil) 

    } 

    // User picks image 
    func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) { 
     if let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage { 
      imageView.contentMode = .ScaleAspectFit 
      imageView.image = pickedImage 

      let data = UIImagePNGRepresentation(pickedImage) 
      NSUserDefaults.standardUserDefaults().setObject(data, forKey: "image") 
      NSUserDefaults.standardUserDefaults().synchronize() 
     } 

     dismissViewControllerAnimated(true, completion: nil) 
    } 

    // User cancels picking image action 
    func imagePickerControllerDidCancel(picker: UIImagePickerController) { 
     dismissViewControllerAnimated(true, completion: nil) 
    } 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     imagePicker.delegate = self 

     if let imageData = NSUserDefaults.standardUserDefaults().objectForKey("image") as? NSData { 
      self.imageView.image = UIImage(data: imageData) 
     } 
    } 
} 

답변

0

일반적인 동작이므로 Whatsapp 및 기타와 같은 앱에서도 볼 수 있습니다.

포토 앱에서 바로 볼 수있는 이유는 센서의 정보를 사용하여 올바른 방향을 결정하기 때문입니다.

iPhone에서 Windows PC로 사진을 복사하면이 사실을 입증 할 수 있지만 모든 사진이 올바른 방향으로 표시되는 것은 아닙니다.

메타 데이터에 액세스하여 직접 확인할 수 있는지 확실하지 않습니다.

적어도 Whatsapp는 사용자가 요청한대로 이미지를 회전하는 데 버튼을 사용합니다. 이는 일시적인 해결책 일 수 있습니다.

관련 문제