7

Estoy registrando dinámicamente un observador en un grupo de controladores de vista de tabla, por lo que necesito eliminar observadores anteriores si se registraron en el mismo objeto. Para hacer esto, necesito verificar si el observador existe en el objeto.KVO - Cómo obtener una lista de objetos observadores registrados

¿Esto es posible? Sé con NSNotification que puede utilizar el singleton del centro NSNotification, pero ¿es esto lo mismo para KVO?

Respuesta

2

No, no hay una manera simple que yo sepa. KVO y NSNotification difieren en ese asunto. ¿Por qué no implementa su solución con NSNotification en lugar de KVO si necesita esa funcionalidad?

+0

Estoy vinculando a una vista de tabla para detectar cuándo tiene elementos. Supongo que podría enviar un evento de notificación de forma manual. Tengo una superclase manejando el proveedor de datos. KVO parece ideal sin embargo. Podría hacerlo de otra manera también. Gracias por la rápida respuesta. –

15

No sé, cómo se pueden eliminar los observadores registrados en los mismos objetos.

Pero creo que a continuación el método le ayudará a avanzar un poco para encontrar su solución.

observationInfo

devuelve un puntero que identifica la información acerca de todos los observadores que están registrados con el receptor.

- (void *)observationInfo 

La implementación predeterminada de este método recupera la información de un diccionario global codificado por los punteros del receptor.

Cuestiones relacionadas