AVISO: Cualquier pregunta que no cumpla ninguno de estos criterios podrá ser borrada sin previo aviso.

Mirad, tengo un RootViewController que es el Home de mi aplicación y dentro de este tengo un UITableViewGrouped con dos celdas que cuando se pulsen quiero que abran views completamente distintas. Lo que estoy haciendo es(dentro de didSelectRowAtIndexPath):

NSString *userSelection = [cosas objectAtIndex: indexPath.row]; // cosas es el array con los titulos de las celdas

switch(userSeleccion[0]){     
   case 'C':  
       Coche *coche = [[Coche alloc] initWithNibName:@"CocheView" bundle:[NSBundle:mainBundle]]; `
       [self.navigationController pushViewController:coche animated:YES]; 
       break;

   case 'S': 
       Seguro *seguro = [[Seguro alloc] initWithNibName:@"SeguroView" bundle:[NSBundle:mainBundle]];  
       [self.navigationController pushViewController:seguro animated:YES]; 
       break;  
}

Y me da un error de que delante de coche debe haber algo

Y ya que estamos otra cosa. Como puedo hacer para poner el logo de mi app encima del TableView. Muchas gracias

preguntado 04 Dic '10, 14:32

Izqui's gravatar image

Izqui
345202831

editó 04 Dic '10, 14:44

Blind's gravatar image

Blind ♦♦
1.3k31227


Por partes, has comprobado que...

¿Las clases Coche y Seguro son subclases de UIViewController?.

¿Y los ficheros XIB CocheView y SeguroView, en IB, tienen como File's Owner a Coche y Seguro respectivamente? ¿Y en cada uno, el Outlet view esta asociado a cada vista?

Si todo esto lo tienes bien, pegamos exactamente el error que te está dando.

enlace permanente

respondido 04 Dic '10, 14:56

Blind's gravatar image

Blind ♦♦
1.3k31227

Tendrías que mirar una cosa antes: userSeleccion es un NSString*, por lo que no puedes acceder al primer caracter de la cadena utilizando [0]. Si quieres comprobar el primer carácter de una cadena deberías utilizar [userSeleccion characterAtIndex:0]. De otra forma, lo que estás comprobando es el contenido de la dirección de memoria ocupada por el NSString*, no el primer carácter.

Otra cosa: “me da un error de que delante de coche debe haber algo” es de poca ayuda. Es muy sencillo cortar y pegar el mensaje de error, y la gente te podrá ayudar mucho mejor. De cualquier forma, si no interpreto mal tu frase, el compilador te está diciendo que no conoce lo que es un Coche, muy posiblemente porque no has importado su archivo de cabecera en el archivo que estás compilado. Un simple #include "Coche.h" en la parte superior del .m que te está causando problemas debería solucionarlo (posiblemente tengas que hacer lo mismo con Seguro.h).

Y finalmente para tu pregunta final mira la propiedad tableHeaderView de UITableView que sirve para poner una vista en lo alto de tu UITableView.

enlace permanente

respondido 04 Dic '10, 16:33

YoNoSoyTu's gravatar image

YoNoSoyTu
4.7k1962

mira x lo del codigo de error lo siento pero es que ese codigo lo borre cuando no me funciono y lo volvi a escribir directamente aqui, lo siento

(04 Dic '10, 17:13) Izqui
Tu respuesta:
Activar/desactivar vista previa