w tym artykule chcę opowiedzieć trochę o pracy z interfejsami użytkownika w Elements for Cocoa.
jak wiecie, kompilator Cocoa jest kompilatorem natywnym dla środowiska Objective-C, co oznacza, że działa bezpośrednio z klasami dostarczanymi przez frameworki Cocoa i Cocoa Touch firmy Apple. Obejmuje to Klasy niskiego poziomu, takie jak NSString
lub NSArray
, do komponentów wizualnych wysokiego poziomu opartych na NSView
(Mac) i UIView
(iOS).
jednym z powszechnych sposobów pracy aplikacji Mac i (zwłaszcza) iOS z interfejsem użytkownika jest po prostu tworzenie niezbędnych widoków i kontrolek, które tworzą interfejs aplikacji z kodu. Ale prędzej czy później, zwłaszcza w przypadku bardziej złożonych lub wyrafinowanych interfejsów użytkownika, będziesz chciał użyć projektanta wizualnego. Działa to na tych samych zasadach, niezależnie od tego, czy używasz Xcode / Objective – C, czy Elements.
interfejsy Mac i iOS są zaprojektowane w Interface Builder, który od wersji 4 Xcode jest bezpośrednio zintegrowany z Xcode IDE, a podczas pracy z elementami, to jest, gdzie będziesz pracować z interfejsami, uzyskując takie same doświadczenie i tę samą moc i elastyczność projektowania UI, że programiści korzystający z Objective-C uzyskać.
istnieją dwa formaty plików używane do projektowania interfejsu użytkownika na platformie Apple – starszy format XIB i nowszy format Storyboard. Zasady postępowania z tymi plikami są podobne i dla uproszczenia często odnosimy się do „plików XIB” w miejscach, w których znajdują się zarówno XIB, jak i storyboardy.
- czym są pliki XIB?
- czym różnią się Pliki Storyboard od XIBs?
Terminologia: XIB vs. NIB?
Ta sekcja mówi o plikach XIB, ale wiele metod pracy z plikami XIB wspomina o plikach NIBs. O co chodzi?
XIBs to nowszy format oparty na XML, który jest używany w interfejsie użytkownika w czasie projektowania. Podczas kompilacji aplikacji, Pliki XIB są konwertowane do binarnych plików NIB dla ciebie, a te binarne wersje plików są osadzone w aplikacji. Wszystkie interfejsy API pracujące z tymi plikami przed nowym formatem (a w czasie wykonywania działają tylko ze starszym formatem NIB), dlatego wszystkie nazwy metod odnoszą się do NIB, a nie XIB. Kiedy przekazujesz nazwy, nigdy nie musisz (lub nie powinieneś) określać rozszerzenia pliku, więc jest to rozróżnienie, które możesz w dużej mierze zignorować (chyba że chcesz przejść do spelunkingu w swoim .pakiet aplikacji).