objective-c properties categories

objective c - Categorías de Objective-C: ¿Puedo agregar una propiedad para un método que no esté en mi categoría?



properties categories (3)

Aquí está la advertencia que está recibiendo:

warning: property ''foo'' requires method ''-foo'' to be defined - use @synthesize, @dynamic or provide a method implementation

Para suprimir esta advertencia, ten esto en tu implementación:

@dynamic foo;

Quiero usar una categoría para hacer que un método en la clase original también esté disponible como propiedad.

Clase A:

@interface ClassA - (NSString*)foo; @end

Categoría clase A

@interface ClassA (Properties) - (void)someCategoryMethod; @property (nonatomic, readonly) NSString *foo; @end

Ahora, cuando hago esto, parece funcionar ( EDITAR: Tal vez no funcione, no se queje, pero veo algo extraño), pero me advierte porque no estoy sintetizando la propiedad en la implementación de mi categoría. ¿Cómo le digo al compilador que todo está realmente bien ya que la clase original sintetiza la propiedad para mí?



Si algo está declarado en la interfaz de su categoría, su definición pertenece a la implementación de su categoría.