2011-11-06 16 views
7

me sale un error que indica "Se esperaba un identificador" en esta línea de códigoXcode: Se esperaba un identificador

UINavigationController *navController1 = [[[UINavigationController alloc] initWithRootViewController:viewController4]]; 

Este código se coloca en la aplicación Delegado de la siguiente manera

#import "AppDelegate.h" 

#import "FirstViewController.h" 

#import "SecondViewController.h" 

#import "ParkTable.h" 
#import "TableTest.h" 

@implementation AppDelegate 

@synthesize window = _window; 
@synthesize tabBarController = _tabBarController; 
@synthesize ParkTableDel = _tableViewController; 
@synthesize navController; 




- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
// Override point for customization after application launch. 
UIViewController *viewController1 = [[FirstViewController alloc] initWithNibName:@"FirstViewController" bundle:nil]; 
UIViewController *viewController2 = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil]; 
UITableViewController *viewController3 = [[ParkTable alloc] initWithNibName:@"ParkTable" bundle:nil]; 
UITableViewController *viewController4 = [[TableTest alloc] initWithNibName:@"TableTest" bundle:nil]; 
UINavigationController *navController1 = [[[UINavigationController alloc] initWithRootViewController:viewController4]]; 

self.tabBarController = [[UITabBarController alloc] init]; 
self.ParkTableDel = [[UITableViewController alloc] init]; 

self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, viewController3, viewController4, nil]; 
self.window.rootViewController = self.tabBarController;  
[self.window makeKeyAndVisible]; 
return YES; 
} 

// [...] Boilerplate code removed. 
@end 

Me preguntaba qué tengo que cambiar para hacerlo correcto.

+0

Copie y pegue el registro de errores. Además, TableTest es un UITableViewController? – 3lvis

Respuesta

16

¿Podría ser el conjunto adicional de paréntesis? []

+0

Hola, eso ha reparado el código, pero la vista parece ser una pantalla negra cuando hago clic en esa pestaña, ¿sabes cuál es el problema ahora? –

+0

¿Eso sucede con todos los controladores de vista en la barra de pestañas? ¿O generalmente tienes una pantalla negra? ¿Hay algo en los archivos de punta que carguen tus controladores de vista? ¿Están conectados correctamente en Interface Builder? – Luke

+0

Tengo cuatro pestañas; las dos primeras funcionen bien, ya que son solo controladores de vista normales. pero los dos últimos son TableView y navController1 cuando hago clic en TableView muestra la tabla pero las celdas no presionan sus respectivas vistas y la tercera pestaña es navController1 que muestra una barra de navegación y una vista negra con la barra de pestañas en El fondo. –

1

Como lo señaló Luke, tiene un par adicional de paréntesis.

Para corregir la pantalla el intento negro ..

[self.window addSubview: self.tabBarController.view] 

.. En lugar de

self.window.rootViewController = self.tabBarController; 
+0

Hola, la barra de pestañas se muestra en la pantalla negra junto con una barra de navegación en la parte superior. la parte negra es donde debería estar la mesa. debería haber sido más claro cuando dije "pantalla negra". –

0

tenía el mismo problema. Probablemente sea el conjunto extra de [] que tiene alrededor de su línea de código.

Cuestiones relacionadas