4
imagePickerViewを使用して写真ライブラリから画像をロードしようとしています。私は、フォトライブラリへのアクセスを得ることができplist.Iを更新し、Xcodeの8のために、以下のようにフォトライブラリにアクセスした後 UIImagePickerController didFinishPickingImageがSwift 3で呼び出されていません
を得るために、私のplistを更新しました。しかし、Picker画像は、私のimageViewに読み込まれません。マイコード:
注:コード使用の下 ないXcodeの8中のXcode 7で動作するように?
import UIKit
class ViewController: UIViewController,UIImagePickerControllerDelegate,UINavigationControllerDelegate {
let imagePicker = UIImagePickerController()
@IBOutlet weak var imageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
imagePicker.delegate = self
}
@IBAction func library(_ sender: UIButton) {
if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.photoLibrary) {
imagePicker.delegate = self
imagePicker.sourceType = UIImagePickerControllerSourceType.photoLibrary;
imagePicker.allowsEditing = true
self.present(imagePicker, animated: true, completion: nil)
}
}
コード更新:rmaddy答えから:事前に
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
if let image = info[UIImagePickerControllerOriginalImage] as? UIImage {
imageView.image = image
}
picker.dismiss(animated: true, completion: nil);
}
おかげで....あなたは正しいデリゲートメソッドを使用する必要がスウィフト3では
イメージオブジェクトを使用する前にピッカーを閉じる必要があります。このコードはiPhone4sにメモリの問題を作成します。 – Darshana
私はあなたのanswer.itを使用していますが、メモリ警告でアプリケーションがクラッシュすることがあります。私はスイフト3を使用しています... – Joe
それはまったく新しい問題です。関連するすべての詳細を含む新しい質問を投稿して、人々がその問題を解決するのを手伝ってください。 – rmaddy