您的位置:首页 > 移动开发 > IOS开发

ios学习笔记(六)之回调函数

2016-04-22 07:09 369 查看
今天开发中用到了回调,貌似oc中回调方法很多,在此仅先学习来正式协议回调。

回调函数:

类A调用类B, 类B某个模块之行结束需要调用A中的某个函数

通常有两个步骤:

- 回调函数注册 类A将自己的函数作为回调函数注册到B

- 函数调用,类B中达到某个条件时调用类A注册到类B的回调函数

第一步创建协议

#import <Foundation/Foundation.h>

@protocol ASIhttpCallback

-(NSString*) httpSuccess:(NSString*) result;

-(NSString*) httpFailures:(NSString *) result;

@end

步骤二 创建类B 运行回调函数

classB.h

@interface MalertViewUtil : NSObject{

id<ASIhttpCallback> asihttpCallback;

}

@property (nonatomic)
id<ASIhttpCallback>
asihttpCallback;

-(void)test;

@end

classB.m

@implementation ClassB

-(void)test{

[self.asihttpCallback
httpSuccess:传入值];//调用回调函数

}

@end

第三步 类A进行回调函数注册

classA.h

#import "ASIhttpCallback.h"

@interface classA :
UIViewController<ASIhttpCallback>

-(void)classAtest;

@end

classA.m

@implementation
classA

(NSString*) httpSuccess:(NSString*) result
{

NSLog(@"回调结果:%@",result);

return
NULL;
}
-(NSString*) httpFailures:(NSString *) result
{

return
NULL;

}

-(void)classiest{

classB *classBtest = [[classB alloc] init];

classBtest.delegate = self;

}

@end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: