2015-04-14 82 views
3

升級到最新的Xcode 6.3後,imagePickerController不再有效。任何想法這個方法的最新變化是什麼?在Xcode 6.3中損壞的imagePickerController

func imagePickerController(picker: UIImagePickerController!, didFinishPickingMediaWithInfo info: NSDictionary!) {...} 

Error message: 
'imagePickerController:didFinishPickingMediaWithInfo:' provided by method 'imagePickerController(_:didFinishPickingMediaWithInfo:)' conflicts with optional requirement method 'imagePickerController(_:didFinishPickingMediaWithInfo:)' in protocol 'UIImagePickerControllerDelegate' 

回答

9

您使用的是錯誤的功能,請使用此功能!

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]){ 
//Your Code 
} 
+0

似乎是正確的,但行爲改變了嗎?用於選擇圖片時,選擇器將消失,現在選擇它並且沒有任何事情發生,直到按下取消。 –

+1

把這一行放在函數中:'picker.dismissViewControllerAnimated(true,completion:nil)' –

+0

希望你已經實現了函數:'func imagePickerControllerDidCancel(picker:UIImagePickerController' –

1

我和你有同樣的問題,我做了如下,現在它工作。

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) { 
    let pickedImage: UIImage = (info as NSDictionary).objectForKey(UIImagePickerControllerOriginalImage) as! UIImage 
    let smallPicture = scaleImageWith(pickedImage, newSize: CGSizeMake(250, 250)) 
    var sizeOfImageView:CGRect = itemImageView.frame 
    sizeOfImageView.size = smallPicture.size 
    itemImageView.frame = sizeOfImageView 
    itemImageView.image = smallPicture 
    picker.dismissViewControllerAnimated(true, completion: nil) 
} 
1

使用此方法在斯威夫特2

func imagePickerController(picker: UIImagePickerController, 
    didFinishPickingMediaWithInfo info: [String : AnyObject])