Jestem bardzo nowy w rozwoju iPhone'a. Często spotykam się z IBAction
, IBOutlet
itd. Podczas czytania kodu Objective-C. Co oznacza IB
?Co oznacza IB w IBAction, IBOutlet itp.?
Odpowiedz
"Generator interfejsów".
Przed Xcode 4 pliki interfejsu (XIBs i NIB) były edytowane w osobnym programie o nazwie Interface Builder, stąd prefiks.
IBAction
jest zdefiniowany jako void
, a IBOutlet
na nic. To tylko wskazówki do konstruktora interfejsu podczas analizowania plików, aby były dostępne dla połączeń.
Wystarczy dodać odwołanie, wewnątrz zestaw klas AppKit/NSNibDeclarations.h znajdziesz nich:
#ifndef IBOutlet
#define IBOutlet
#endif
#ifndef IBAction
#define IBAction void
#endif
Tak, rzeczywiście, kod tak:
@interface ...
{
IBOutlet NSTextField *label;
}
- (IBAction)buttonPressed:(id)sender;
@end
zostanie przekształcona:
@interface ...
{
NSTextField *label;
}
- (void)buttonPressed:(id)sender;
@end
Przez preprocesor, nawet zanim kompilator go zobaczy. Te słowa kluczowe działały tylko jako wskazówki do konstruktora interfejsu.
Wystarczy dodać, że "IBAction" to "void". Jest to coś w rodzaju znaczników, aby twórca interfejsu mógł zobaczyć, który kod metod ujawnia połączenia z przyciskami i innymi kontrolkami. Nie jestem pewien co do 'IBOutlet', ale jestem pewien, że jest podobny do' IBAction', aby twórca interfejsu mógł zobaczyć, jakie elementy sterujące może łączyć się z kodem. – Eimantas
Narzędzie wciąż nosi nazwę Interface Builder; to już nie istnieje jako oddzielna aplikacja. Szkoda, bo naprawdę uwielbiam tę ikonę. – BoltClock
@Eimantas Redagowałem odpowiedź, aby zanotować w tym samym czasie, gdy pisałeś komentarz :-) dziękuję za skierowanie go też – sidyll
IB oznacza budowniczego interfejsów, gdy łączysz obiekty za pomocą kreatora interfejsów.
IBAction i IBOutlet są interfejsami Stałe konstruktora IBOutlet: Klasa Controller może odwoływać się do obiektu w pliku nib za pomocą specjalnej stałej o nazwie IBOutlet.
IBActions: Obiekty interfejsu w pliku końcówki można ustawić, aby wyzwalały określone metody w klasie kontrolera, używając IBAction jako metody zwracania metody.
- 1. jak połączyć się z IBOutlet lub IBAction w klasie bazowej
- 2. co oznacza „$ &” oznacza w Ruby
- 3. Co oznacza (+ var) oznacza
- 4. Get tekst przycisku z IBAction - iPhone
- 5. Xcode 8 przeciągnij i połączyć @IBAction nieprawidłowo dodaje „WithSender” na inspektora połączenie IB
- 6. Deklaracje IBOutlet?
- 7. Swift 2: Kolekcja IBOutlet [UIButton]! wycieka pamięć
- 8. Co znaczy: co oznacza?
- 9. Co oznacza klasa int.class
- 10. Co oznacza $$, $ ?, $^w powershell?
- 11. Co oznacza() w Swift?
- 12. Co oznacza "@" w Haskell?
- 13. Co oznacza * w XAML
- 14. Co oznacza^{} w git?
- 15. Co = ~ oznacza w Perl
- 16. Co oznacza # w LISP
- 17. Co oznacza ":" w PHP?
- 18. Co oznacza: * w C++?
- 19. Co oznacza \ + w Prologu?
- 20. Co oznacza = ~ w VimScript?
- 21. Co oznacza "% &" w Clojure?
- 22. Co oznacza "**" w ANT?
- 23. Co oznacza = *?
- 24. Co oznacza "::"?
- 25. Co oznacza $ _ TRULY w PowerShell?
- 26. Co oznacza <- oznacza w Javie?
- 27. Co oznacza "! []" Składnia wiązu w Todomvc oznacza
- 28. Co oznacza "[to]" oznacza w języku C++
- 29. Co oznacza $ f oznacza w skryptach jquery?
- 30. Co oznacza "CL" w komunikacie zatwierdzenia? Co to oznacza?
Konstruktor interfejsów – jrturton