Ich habe versucht, einen Viewcontroller von einer benutzerdefinierten Zelle mit Delegaten zu laden. Aber ich bekomme keine NULL von der Gruppe Delegate! Hier ist ein Beispiel, wenn jemand helfen kann! 1. In ZellWie lade ich einen Viewcontroller aus einer XIB-Datei?
protocol hotelFindDelegate{
func modalDidFinished(modalText: String)
}
class hotelFindCell: UITableViewCell {
var delegate:hotelFindDelegate?
@IBAction func findButton(sender: AnyObject) {
self.delegate!.modalDidFinished("HELLO")
print("Damn nothing works")
}
2. In Hauptansicht
class MainViewController:hotelFindDelegate {
let modalView = hotelFindCell()
override func viewDidLoad() {
super.viewDidLoad()
self.modalView?.delegate = self
}
func modalDidFinished(modalText: String){
let viewController:UIViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("HotelListVC") as UIViewController
self.presentViewController(viewController, animated: false, completion: nil)
self.modalView.delegate = self
print(modalText)
}
Sie wollen VC von XIB laden ..? Ihr angegebener Code stimmt nicht mit Ihrer Frage überein. –
Ja! Ich versuche Delegierte zu verwenden. Kümmern Sie sich nicht um den Code. – Parion
Das ist in Ordnung, wenn Sie Delegaten verwenden oder etwas anderes tun, aber Ihr Code sollte mindestens Ihren Anforderungen entsprechen. Zuerst entscheidest du, dass du den View Controller von XIB oder Storyboard laden willst. –