2017-08-13 32 views
0

我想這個問題可以很容易地歸類爲重複,但搜索後無法找到答案。無法識別的選擇器發送到實例

cellForRowAttableView

let chooseProfilePhotoPicker = ChooseProfilePhotoPicker(rootVC: self) 
chooseProfilePhotoPicker.cropVC.delegate = self 
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(chooseProfilePhotoPicker.iconImageViewTapped(_:))) 
cell.iconImageView.addGestureRecognizer(tapGesture) 

而且ChooseProfilePhotoPicker類:

class ChooseProfilePhotoPicker: NSObject, UIImagePickerControllerDelegate, UINavigationControllerDelegate { 

    var rootController: UIViewController 

    init(rootController: UIViewController) { 
     self.rootController = rootController 
    } 

    func iconImageViewTapped(_ recognizer: UITapGestureRecognizer) { 

     var pickerController = UIImagePickerController() 
     pickerController.delegate = self 
     pickerController.sourceType = UIImagePickerControllerSourceType.photoLibrary 

     rootController.present(myPickerController!, animated: true, completion: nil) 
    } 
} 

應用程序崩潰時,我點擊了iconImageView

回答

0

如果動作應該在運行ChooseProfilePhotoPicker的實例你必須設置target據此:

let tapGesture = UITapGestureRecognizer(target: chooseProfilePhotoPicker, action: #selector(chooseProfilePhotoPicker.iconImageViewTapped(_:))) 
+0

ahh當然!儘可能標記正確 – luke

相關問題