Mover a otro controller de vista en iOS onclick con el button

Soy muy nuevo en iOS y todavía estoy tratando de entender cosas. Estoy probando este sencillo progtwig en XCode 5, donde cuando un usuario hace clic en el button, será networkingirigido a otro controller de vista. Hice lo que otros foros dijeron a otras personas que preguntan, pero parece que encuentro un error.

Estos son mis códigos:

En ViewController.m:

- (IBAction)button1:(id)sender { WebServiceViewController *wc = [[WebServiceViewController alloc] initWithNibName:@"WebServiceViewController" bundle:nil]; [self.navigationController pushViewController:wc animated:YES]; } 

Colocé una import "WebServiceViewController.h" en los encabezados.

Aquí está el error (no un post de error de IDE, pero tampoco es un éxito):

introduzca la descripción de la imagen aquí

Aquí está la exception:

 2013-10-25 02:05:51.904 sample[16318:a0b] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </Users/Guest/Library/Application Support/iPhone Simulator/7.0/Applications/C6FA1F33-5E11-40C2-8C69-DA368F21CA5F/sample.app> (loaded)' with name 'WebServiceViewController'' *** First throw call stack: ( 0 CoreFoundation 0x017345e4 __exceptionPreprocess + 180 1 libobjc.A.dylib 0x014b78b6 objc_exception_throw + 44 2 CoreFoundation 0x017343bb +[NSException raise:format:] + 139 3 UIKit 0x004ca65c -[UINib instantiateWithOwner:options:] + 951 4 UIKit 0x0033cc95 -[UIViewController _loadViewFromNibNamed:bundle:] + 280 5 UIKit 0x0033d43d -[UIViewController loadView] + 302 6 UIKit 0x0033d73e -[UIViewController loadViewIfRequinetworking] + 78 7 UIKit 0x0033dc44 -[UIViewController view] + 35 8 UIKit 0x00357a72 -[UINavigationController _startCustomTransition:] + 778 9 UIKit 0x00364757 -[UINavigationController _startDefernetworkingTransitionIfNeeded:] + 688 10 UIKit 0x00365349 -[UINavigationController __viewWillLayoutSubviews] + 57 11 UIKit 0x0049e39d -[UILayoutContainerView layoutSubviews] + 213 12 UIKit 0x00294dd7 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 355 13 libobjc.A.dylib 0x014c981f -[NSObject performSelector:withObject:] + 70 14 QuartzCore 0x03aee72a -[CALayer layoutSublayers] + 148 15 QuartzCore 0x03ae2514 _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 380 16 QuartzCore 0x03ae2380 _ZN2CA5Layer28layout_and_display_if_neededEPNS_11TransactionE + 26 17 QuartzCore 0x03a4a156 _ZN2CA7Context18commit_transactionEPNS_11TransactionE + 294 18 QuartzCore 0x03a4b4e1 _ZN2CA11Transaction6commitEv + 393 19 QuartzCore 0x03a4bbb4 _ZN2CA11Transaction17observer_callbackEP19__CFRunLoopObservermPv + 92 20 CoreFoundation 0x016fc53e __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 30 21 CoreFoundation 0x016fc48f __CFRunLoopDoObservers + 399 22 CoreFoundation 0x016da3b4 __CFRunLoopRun + 1076 23 CoreFoundation 0x016d9b33 CFRunLoopRunSpecific + 467 24 CoreFoundation 0x016d994b CFRunLoopRunInMode + 123 25 GraphicsServices 0x036859d7 GSEventRunModal + 192 26 GraphicsServices 0x036857fe GSEventRun + 104 27 UIKit 0x0022a94b UIApplicationMain + 1225 28 sample 0x00002e7d main + 141 29 libdyld.dylib 0x01d70725 start + 0 30 ??? 0x00000001 0x0 + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb) 

Además, estoy usando storyboard. Tengo una escena inicial en la que el usuario inicia session. Esta escena tiene incorporado un controller de navigation. Después de iniciar session, no voy a usar segue ya que habría varios controlleres de vista que se pueden cargar, dependiendo del tipo de usuario que haya iniciado session. Estoy tratando de hacer este simple progtwig, ya que voy a utilizarlo más complejo en el futuro.

Obviamente me falta algo. Espero que alguien pueda ayudarme. Estaría muy agradecido.

EDITAR:

Esto funciono para mi

 WebServiceViewController *wc = [[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"WebServiceViewController"]; [self.navigationController pushViewController:wc animated:YES]; 

storyboardWithName depende del nombre del guión gráfico (si no es muy obvio jeje).

testing esto:

 WebServiceViewController *wc = [[UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil] instantiateViewControllerWithIdentifier:@"WebServiceViewController"]; 

también establezca storyboardId a WebServiceViewController en Identity Inspector

Ya sabes, usando un storyboard también puedes definir una segue que no esté conectada directamente a un button, nombre que segue, y luego llamarlo programáticamente así:

  [self performSegueWithIdentifier:@"showWebServiceViewController" sender:nil]; 

Creo que este enfoque es más limpio y más acorde con la forma en que Storyboard trabaja.

Por supuesto, dependiendo de qué usuario haya iniciado session, podría realizar diferentes segues denominados para llegar a la pantalla apropiada.