uiimagePickerController didFinishPickingMediaWithInfo 在图像选择时没有被调用

imagePickerController didFinishPickingMediaWithInfo not getting called on Image Selection

在我下面的 class 中,imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) 没有被调用,我不明白为什么。这是一个扩展JSQMessagesViewController的class,不知道是否与它有关。

UIImagePickerController 未从情节提要中添加。我猜它是在扩展 JSQMessagesViewController 时添加的?(看不出来)

无论如何,我可以看到函数 actionSheet 确实调出了 imagePicker 相册,我可以 select 一张图片,但是 imagePicker 函数 didFinishPickingMediaWithInfo 永远不会被调用。

如何将此 class 指定为其委托?

Here is the complete class code(GitHub 上的这个示例可以运行,但我无法在我的项目中运行它,我缺少什么?)

class ChatViewController: JSQMessagesViewController, UIActionSheetDelegate, UIImagePickerControllerDelegate, UINavigationControllerDelegate {

override func viewDidLoad() {

    super.viewDidLoad()

}

    //DELETED THE REST OF THE CODE OF THIS CLASS TO KEEP THIS QUESTION LENGTH SHORT

func actionSheet(actionSheet: UIActionSheet, clickedButtonAtIndex buttonIndex: Int) {

    NSLog("ChatViewController-> actionSheet(clickedButtonAtIndex)")
    if buttonIndex != actionSheet.cancelButtonIndex {
        if buttonIndex == 1 {
            Camera.shouldStartCamera(self, canEdit: true, frontFacing: true)
        } else if buttonIndex == 2 {
            Camera.shouldStartPhotoLibrary(self, canEdit: true)
        } else if buttonIndex == 3 {
            Camera.shouldStartVideoLibrary(self, canEdit: true)
        }
    }
}

// MARK: - UIImagePickerControllerDelegate



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

    //THIS FUNCTION NEVER GETS CALLED AFTER AN IMAGE IS SELECTED FROM THE PHOTO ALBUM

}



}

Camera.shouldStartPhotoLibrary 方法可能呈现 UIImagePickerController。检查定义的位置。