在每个viewcontroller类中,如何定义可以从任何地方调用的方法?
我有一个方法,给我一个json文件,我希望它是可重用的,因为我有几个json调用我的应用程序.
你可以帮我吗?
解决方法
您可以通过类别添加它:
编辑
创建一个新的.h .m文件对,并在.h文件中:
@interface UIViewController(JSON) -(void) bringJSON; -(void) fetchData:(NSData*) data; @ end
然后在.m文件中
@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
在那里我假设你会返回一个NSArray,你可以把任何方法放在所有的UIViewControllers上.所有UIViewControllers及其子类都可以使用bringJSON方法.