|
Hola, en mi app necesito a veces pasar datos de una vista a otra para luego después mostrar esta vista. Actualmente hago: LaVistaVC *lavista = [[LaVistaVC alloc] initWithNib... Pero a veces no me da el valor a cocgesString. En mi .m tengo importada LaVistaVC.h. Un saludo. |
|
También puedes crear un inicializador en tu vista que acepte los parametros
De este modo puedes inicializar tu vista con tus datos Muchas gracias... esto era!!!
(07 Mar '11, 08:38)
Izqui
De todas formas tal y como comenta emenegro, mira bien que el accesor a tu propiedad está en retain y no en assign. La forma que mencionas en tu pregunta es también correcta pero es posible que lo tengas en assign apuntando al puntero en vez de retenerlo y por tanto cuando la vista va a usar dicho puntero la variable se ha perdido y por lo tanto te da nil. En cambio si hace un retain da lo mismo si el controller ha hecho un release de la variable ya que la vista mantiene la variable viva ya que ha hecho retain (y por lo tanto debería de hacer un release en el dealloc). Pasar las variables en el inicializador o asignarlas después mediante setters es una cuestión de estilo realmente. Personalmente yo prefiero que vayan en el inicializador si la clase, en este caso la vista, es ínutil sin dichas variables, es decir necesita de dichas variables para tener sentido, ya que no existen valores por defecto.
(08 Mar '11, 18:48)
hector spc
|
|
Buenas Izqui, Intenta inicializar siempre la propiedad Ya nos contarás... :) |
|
A lo dicho por los compañeros, si dices que a veces no te da valor eso puede ser que el accessor que usas para pasar la propiedad a |