2013-04-17 19 views
6

Jak zidentyfikować UIStoryboard?Identyfikacja UIStoryboard

Klasa posiada metody, które tworzą i instancji, ale ja nie widzę @property z czymś name. Na przykład.

Pierwsze storyboard PRZEDMIOT

+ storyboardWithName:bundle: 

instancji Storyboard Zobacz Kontrolery

– instantiateInitialViewController 
– instantiateViewControllerWithIdentifier: 

Wszelkie sugestie?

==== UPDATE

Miałem nadzieję na coś takiego self.storyboard.name lub [self.storyboard description], np .:

NSLog(@"This Storyboard is: %@", self.storyboard.name); 

Może to nie miało być.

+0

To zależy od tego, gdzie starasz się go zidentyfikować. Jeśli jesteś w kontrolerze, który został utworzony w serii ujęć, po prostu użyć self.storyboard. Jeśli robisz to z App delegata, albo trzeba się odniesienie do innej serii ujęć (nie jeden kontroler jest) to trzeba zastosować metodę przedstawioną przez Briana Luby w swojej odpowiedzi. – rdelmar

Odpowiedz

3

można zidentyfikować storyboard przez jego nazwę w nawigatorze projektu:

enter image description here

można zidentyfikować kontroler widok z ujęć poprzez ustawienie jej Storyboard identyfikator inspektora tożsamości w interfejsie konstruktora:

enter image description here

Gdy masz te, można uzyskać do nich dostęp za pośrednictwem kodu:

UIStoryboard *iPhoneStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil]; 
ViewController *firstViewController = [iPhoneStoryboard instantiateViewControllerWithIdentifier:@"FirstViewController"]; 
Powiązane problemy