2013-03-28 9 views
10

Wiem, że to naprawdę proste pytanie, ale nigdzie się nie dostaję.Programowalnie otwórz kontroler widoku i nie używając Seque

Mam storyboard i wszystkie kontrolery widoku są otwierane za pomocą segues, które jest w porządku, ale chciałbym otworzyć jeden z nich za pomocą kodu, gdy przycisk zostanie naciśnięty.

Co jest linia do otwierania kontroler widoku nazywa ViewControllerMonitorMenu gdy zostanie naciśnięty przycisk testSliders:

- (IBAction)testSliders:(id)sender 
{ 

} 

Odpowiedz

23

W końcu to dostałem. Dzięki za pomoc wszystkich:

ViewControllerMonitorMenu *monitorMenuViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"ViewControllerMonitorMenu"]; 
[self presentViewController:monitorMenuViewController animated:NO completion:nil]; 
+3

To nie działa –

+0

Czy nazwałeś swój widok w storybooku? – RGriffiths

5

Ten kod programowo stworzony obiekt z ViewControllerMonitorMenu a także można go na nim.

- (IBAction)testSliders:(id)sender 
    { 
     ViewControllerMonitorMenu * object = [[ViewControllerMonitorMenu alloc] init]; 
     [self presentViewController:object animated:YES completion:nil]; 

    } 
+0

Przepraszamy - i dzięki za pomoc - ale nie podążam. Skopiowałem twój kod i nie rozpoznaje MYViewController - sugerując, że powinien to być UIViewController. Czy mam również prawo używać identyfikatora StoryBoard? – RGriffiths

+0

użyj ViewControllerMonitorMenu .... sprawdź moje edytowane – iPatel

+0

Dzięki - czy obiekt ze słowem zostanie zmieniony na crc? Zrobiłem to i ekran po prostu robi się czarny. – RGriffiths