Puede agregarlo a través de una categoría:
EDITAR
Crear un nuevo par de archivos .m .hy en el archivo .h:
@interface UIViewController(JSON)
-(void) bringJSON;
-(void) fetchData:(NSData*) data;
@ end
Luego, en el. m archivo:
@implementation UIViewController(JSON)
-(void) bringJSON {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
[NSData dataWithContentsOfURL:yourURL];
[self performSelectorOnMainThread:@selector(fetchData:)
withObject:data waitUntilDone:YES];
});
}
-(void) fetchData:(NSData*) data {
//parse - update etc.
}
@end
Donde estoy asumiendo que y Estarás devolviendo un NSArray, puedes poner cualquier método allí y extender todos los UIViewControllers. El método bringJSON estará disponible para todos los UIViewControllers y sus subclases.
Singleton http://en.wikipedia.org/wiki/Singleton_pattern –
rooster117 es correcto. Te refieres a un método estático. Tenga en cuenta que todos los métodos son públicos en Objective-C. Sin embargo, puede "ocultar" un método o causar una advertencia del compilador al declarar métodos en una extensión de clase. Aún así, no son realmente privados. –