Tworzenie metody w kontrolerze widzenia (jeśli nic innego, trzeba mieć RootViewController w projekcji). Załóżmy, że metoda jest
-(void) buttonClicked { code code code }
W pliku nagłówkowym kontrolera (np RootViewController.h) następnie umieścić:
-(IBAction) buttonClicked;
A IB kliknięciu prawym przyciskiem myszy pokrętło/przycisk radiowy/cokolwiek. Zobaczysz listę zdarzeń i możesz przeciągnąć ze złącza zdarzenia, które ma otrzymać twój kontroler, do obiektu w IB, który reprezentuje kontroler (prawdopodobnie First Responder). To zależy od konfiguracji twojej struktury IB, ale powinno być proste.
Kolejną alternatywą jest programowanie programowania UIViews i na razie zapomnienie o IB. Opinie są podzielone na temat tego, czy lepiej jest nauczyć się korzystać z IB na początku, czy lepiej nauczyć się robić wszystko w kodzie i zapisać IB na później. W każdym razie konieczne jest poznanie obu sposobów konfigurowania interfejsu w pewnym momencie.
Tak, właśnie o to mi chodzi. A problem, który mam, polega na tworzeniu niestandardowych zdarzeń dla mojej podklasy widoku. To, co się naprawdę dzieje, to to, że na zajęciach - (void) dotyka Moved pod pewnymi warunkami, chciałbym wystrzelić i wydarzenie i chciałbym, aby to wydarzenie było możliwe do połączenia z IBActions przez IB. –
Edytowałem swoją odpowiedź, aby odzwierciedlić, jak to zrobić. Aby to zrobić, musisz użyć wzorca delegata/protokołu. IB wystawi pełnomocnika jako właściwość, która jest przypisana do kontrolera (musisz również odpowiednio ustawić klasę kontrolera w IB), a kontroler będzie musiał wdrożyć protokół. – Jason
Ten rodzaj ma sens (całkiem nowy w całym Objective-C/Cocoa), ale w jaki sposób pozwoliłoby to na powiązanie każdego zdarzenia zmiany wartości RadioDial-s z inną metodą na kontrolerze widoku? Rozumiem, że mogę używać tej samej metody i sprawdzać referencje nadawcy, ale czy to jedyny sposób? –