![](/img/trans.png)
[英]swift my UIImagePicker doesn't show any image on select image from photo library
[英]Selecting image from library doesn't call “didFinishPickingImage” function - Swift
我有一個UIImagePickerController,可以選擇從庫中選擇。
調用accessLibrary
按鈕時,它會提示另一個源類型為.PhotoLibrary
UIImagePickerController。
func accessLibrary(sender: UIButton!) {
NSLog("access library")
choseFromLibrary = true
self.libraryPicker = UIImagePickerController()
self.libraryPicker!.allowsEditing = false
self.libraryPicker!.sourceType = .PhotoLibrary
self.presentViewController(self.libraryPicker!, animated: true, completion: nil)
}
這一切都很好,但是當用戶選擇照片時,我想將該圖像傳遞給視圖,然后在屏幕上顯示該視圖。
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
let metadata = info[UIImagePickerControllerMediaMetadata] as? NSDictionary
var image = info[UIImagePickerControllerOriginalImage] as? UIImage
if (image != nil) {
if (choseFromLibrary) {
let cnfrmImgView = ConfirmImageView.init(image: image!)
self.view.addSubview(cnfrmImgView)
}
else {
if (frontFacing) {
image! = UIImage(CGImage: image!.CGImage!, scale: 1.0, orientation: .LeftMirrored)
}
let cnfrmImgView = ConfirmImageView.init(image: image!)
self.view.addSubview(cnfrmImgView)
}
}
}
如果使用相機而非庫拍攝圖像,則上述功能有效。
當用戶從圖庫中選擇照片時,圖庫選擇器控制器將自動關閉自身,並且不會顯示視圖。
我運行了一個NSLog("here")
來檢查從庫中選擇時是否調用了didFinishPickingImageWithInfo
函數,而實際上卻沒有。
didFinishPickingImageWithInfo
是一個委托消息( UIImagePickerControllerDelegate )。 但是,問題是您沒有給圖像選擇器任何delegate
! 因此,它沒有人向其發送委托消息。
如果您想實現像圖像選擇器這樣的Instagram,而不是嘗試此操作
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.