eine Methode in Ihren View-Controller erstellen (wenn nichts anderes, sollten Sie eine RootViewController haben in ihrem Projekt). Lassen Sie uns sagen, dass Ihre Methode
-(void) buttonClicked { code code code }
in der Headerdatei des Controllers (zB RootViewController.h) ist man dann setzen:
-(IBAction) buttonClicked;
Und in IB Sie mit der rechten Maustaste auf Ihren Taste/Radio Wahl/was auch immer. Sie sehen eine Liste von Ereignissen und Sie können FROM vom Connector des Ereignisses, das Ihr Controller erhalten soll, zu dem Objekt in IB ziehen, das den Controller repräsentiert (wahrscheinlich First Responder). Dies hängt davon ab, wie Ihre IB-Struktur aufgebaut ist, aber es sollte einfach sein.
Eine andere Alternative ist es, zu lernen, wie man UIViews programmatisch erstellt und IB vorerst vergessen kann. Die Meinungen sind geteilt darüber, ob es besser ist, IB am Anfang zu lernen, oder ob es besser ist, zu lernen, wie man alles im Code macht und IB für später speichert. In jedem Fall ist es notwendig, beide Möglichkeiten zu erlernen, um irgendwann eine Schnittstelle einzurichten.
Ja, das ist genau das, was ich meine. Und das Problem, das ich habe, ist das Erstellen dieser benutzerdefinierten Ereignisse für meine Sichtunterklasse. Was tatsächlich passiert ist, dass in den Klassen - (void) touchesMoved unter bestimmten Bedingungen ich möchte feuern und Event und ich möchte, dass dieses Ereignis mit IBActions über IB verbunden werden kann. –
Ich habe meine Antwort bearbeitet, um zu zeigen, wie das geht. Sie müssen das Delegate/Protokoll-Muster verwenden, um dies zu tun. IB wird die Stellvertretung als eine Eigenschaft offen legen, die Ihrem Controller zugewiesen ist (Sie müssen auch Ihre Controller-Klasse ordnungsgemäß in IB festlegen), und Ihr Controller muss das Protokoll implementieren. – Jason
Das macht Sinn (ziemlich neu für die ganze Objective-C/Cocoa-Sache), aber wie würde es mir erlauben, jedes RadioDial-s-Wertänderungsereignis mit einer anderen Methode auf dem View-Controller zu verbinden? Ich verstehe, dass ich die gleiche Methode verwenden und die Absenderreferenz überprüfen könnte, aber ist das der einzige Weg? –