Hola PRONUER!!!!
Se que ya lo resolviste, pero lo pondre por si a alguien le interesa.
Bueno primero primero que nada te explico que es singleton, singleton es un patron de disenio que indica que un objeto de una clase solo podra ser creado una y solo una vez, es decir digamos que tu desde tu codigo creas un objeto de la clase Conexion, se crea tu objeto y hasta ahi todo bien, digamos que ya mas dentro de tu programa, muucho despues necesitas otro objeto de la clase Conexion, singleton te traera el mismo objeto de la ultima ves, con los mismos datos con los que lo dejaste, sin importar que ya se haya destruido la primera parte donde lo llamaste.
Entonces digamos que en tu vista creas tu objeto, le pones los datos que quieres y cuando crees un objeto igual en la segunda vista deberas tener exactamente el mismo codigo, te pongo un ejemplo rapido.
Clase singleton
Conexion.h
Código PHP:
@interface Conexion:NSObject
{
NSString * direccionIP;
NSString * nombre;
}
@property (nonatomic,retain) NSString * direccionIP;
@property (nonatomic,retain) NSString * nombre;
@end
Conexion.m:
Código PHP:
@implementation Conexion
@synthesize direccionIP;
@synthesize nombre;
//este es el objeto del que te hablaba que siempre que es el unico que va a existir
static Conexion * unicaInstancia=nil;
//Este y solo este metodo deberas utilizar para crear tus objetos!!! olvidate de [[Conexion alloc]init]!!!
+(Conexion *) conexionSingletonObject
{
//en este metodo si se puede dar el caso de que se mande llamar mucho
//tienes que ocuparte de la concurrencia, pero creo que no es tu caso
if(unicaInstancia==nil)
unicaInstancia=[[Conexion alloc] init];//seria la unica ve que lo creamos
return unicaInstancia;
}
@end
Codigo de tu primera vista:
Código PHP:
...
Conexion * objetoParaLLenar=[Conexion conexionSingletonObject];
objetoParaLlenar.nombre=@"BASEGANSITOS";
objetoParaLlenar.direccionIP=@"127.0.0.1";
// esos son los datos que te gustaria pasarle a tu otra vista
...
Codigo de tu segunda vista:
Código PHP:
//con esto ya estas recuperando el mismo objeto de antes
Conexion * objetoRecuperado=[Conexion conexionSingletonObject];
NSLog(@"Tengo una base de datos que se llama %@ en la direccion %@ :D, que felicidad!!!"
,objetoRecuperado.nombre,objetoRecuperado.direccionIP);
//incluso si quieres cambiar datos y conservarlos tambien lo puedes hacer desde aqui
objetoRecuperado.nombre@"BASEDEPATOS";
Es bastante importante no darle release a los objetos que crees con esto, porque recuarda que solo lo creas una ves, le debes de dar release hasta que ya estes seguro que no lo vas a usar ( al menos si lo haces del modo que sugeri)
Espero haberle ayudado a alguien! saludos!!