Pregunta

Estoy desarrollando un lector de libros electrónicos y había encontrado el siguiente problema. Estoy usando un método de IBAction para publicar una nsnotificación que invoca un método de acción una vez que se aprovecha un botón. Está funcionando absolutamente bien por primera vez ... el método de Ibaction debe llamarse Evry Time I top en el botón. Después de completar esta acción, necesito ir a mi página de inicio y luego volver y hacer clic en el botón nuevamente. Aquí es donde me enfrento al problema. El método se llama más de una vez desde la segunda vez y el número solo sigue aumentando ... por favor ayúdame con esto ...

//IBAction Method
if (sender.tag == PenToolAction) {

    GLogInfo(@"Pen tool tapped");
    [self hideSelf];
    [[NSNotificationCenter defaultCenter] postNotificationName:PenToolActionInitialized object:nil];
}
¿Fue útil?

Solución

Si agrega el observador de notificaciones en un método llamado varias veces, también recibirá la notificación varias veces.

Intenta poner el [[NSNotificationCenter defaultCenter] addObserver:...] en el init Método en su lugar o llamar [[NSNotificationCenter defaultCenter] removeObserver:self] justo antes de.

Otros consejos

Muchas gracias por su apoyo ... Encontré la solución para mi pregunta ... El principal culpable aquí en mi código es el tema de la gestión de la memoria ... ¿utilicé el analizador de código X para verificar las filtraciones y descubrí que eso Olvidé lanzar una variable principal .....v lanzé la variable y ahora mi código funciona bien ...

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top