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

IOS开发笔记之二十——类之间交互的方式之一——协议回调传值

2015-01-21 13:30 495 查看
1、假如你要将A类中的一个值或者操作通知B类,有很多方法,其中最为常用的就是使用回调,Objective-C中的回调是借助协议protocol实现的。

2、具体的实现步骤如下:

第一步:A类中protocol协议的定义

@class A;
@protocol ADelegate <NSObject>
@optional
- (void) requestFail:(NSString*)pErrInfo;
@end


第二步:B类的协议继承与协议方法的实现

@interface B ()<OCRResultDelegate>
{
}


- (void) requestFail:(NSString*)pErrInfo
{
if(pErrInfo && pErrInfo.length>0)
{
[self.view  showProgressOnlyLabel:pErrInfo delay:2];
} else
{
[self.view  showProgressOnlyLabel:@"网络响应超时" delay:2];
}
}

第三步:A类的调用

[self requestFailHandle:errMessage];
-(void)requestFailHandle:(NSString*)pErrInfo
{
if (self.delegate && [self.delegate respondsToSelector:@selector(requestFail:)])
{
[self.delegate requestFail:pErrInfo];
}
else
{
NSLog(@"delegate异常");
}
}

这样在A类中进行一些操作后,便可以将操作后的结果信息传递给实现其协议方法的B类。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐