web-dev-qa-db-ja.com

UIImagePickerControllerに正方形の画像をトリミングさせる

UIImagePickerControllerに正方形の画像をトリミングさせるにはどうすればよいですか?

私はあちこちを検索しましたが、固溶体は見つかりませんでした。ありがとう

var imagePickerController: UIImagePickerController = UIImagePickerController();
imagePickerController.allowsEditing = true;
imagePickerController.delegate = self;
imagePickerController.sourceType = sourceType;



func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) {
    profilePictureSelected = true;

    profilePictureImageView.image = image;

    picker.dismissViewControllerAnimated(true, completion: nil);
}
15
JayVDiyk

デリゲートコールバックを受信するまでは正しく実行しています。コールバック内で、使用する編集済み画像であることを指定する必要があります。ここでは別のデリゲートメソッドを使用していることに注意してください。

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) {
    if let chosenImage = info[UIImagePickerControllerEditedImage] as? UIImage {

        profilePictureSelected = true;

        profilePictureImageView.image = chosenImage;
    }
    picker.dismissViewControllerAnimated(true, completion: nil);
}
16
Swinny89

For Swift 4

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
       viewController.dismiss(animated: true, completion: { () -> Void in
           if let image = info[UIImagePickerControllerEditedImage] as! UIImage {
               yourUIImageView.image = image
           }
       })
}
1