2011-04-22 17 views
5

Tengo un Vista1 con un vista2 vista secundaria, donde tengo un botón que tiene UIButton incendios soSomething una acción:¿Cómo crear eventos personalizados?

view1 
--view2 
----IBOutlet UIButton *button 
-----(IBAction) doSomethingid)sender 

clic en el botón llama doSomething. ahora ¿cómo puedo enviar un evento personalizado en doSomething y atraparlo en la vista1?

por ejemplo, en view2:

Código:

-(IBAction)doSomething:(id)sender{ 
    // Disptach the event for the parent "superView" to receive 

} 

después en Vista1 tienen algo que maneja ese evento.

Respuesta

6

En su caso la acción

// Dispatch the event for the parent "superView" to receive 
-(IBAction) doSomething:(id)sender{ 
    [[NSNotificationCenter defaultCenter] postNotification:@"SomeEventName"]; 
} 

en su método view1 viewdDidLoad escribir este código

[[NSNotificationCenter defaultCenter] addObserver:self 
    selector:@selector(methodToHandel) name:@"SomeEventName" object:nil]; 

y añadir este método para manejar ese evento

-(void) methodToHandel{ 
    // this method get call 
} 
0

Puede usar NSNotificatons o delegación dependiendo de cómo esté configurada su aplicación. Sugeriría mirar los documentos para aprender más sobre estas cosas.

Cuestiones relacionadas