Objective-C回调机制(delegate, protocol)
2015-01-06 17:44
423 查看
Objective-C回调机制(delegate, protocol)
(2011-03-02 11:21:12)转载▼
标签:
| 分类: AboutIOS |
protocol用法:
@interface ClassA :ClassB<protocol1, protocol2>
首先先来一个一般情况下的例子,声明一个UIView类:
@interface myView :UIView{
}
@end
之后再声明一个protocol,前缀为protocol,没有方法的实现(实现要交给别的类去完成):
@protocol myViewDelegate
-(void) Fun1;
-(void) Fun2;
@end;
之后就是代理委托人拉,委托的声明方式如下,我们要在ClassB内使用Fun1方法,但是不需要做声明:
@interface ClassB :UIViewController<myViewDelegate>
@end
ClassB实现:
@implement ClassB
-init{
MyView *view = [[MyView alloc]init];
view.delegate = self;
self.view = view;
}
-(void)Fun1{
//dostuff,like change navigatorBar blablabla
}
@end
那么怎么在ClassA中使用Fun1呢?需要在ClassA的声明中添加:
@interface myView :UIView{
id<myViewDelegate> delegate;
}
@property ...
@end
具体实现中时:
-doSth()
{
[delegate Fun1];
}
相关文章推荐
- Objective-C回调机制(delegate, protocol)
- Objective-C回调机制(delegate, protocol)
- Objective-C protocol 和 delegate
- objective-c 协议(Protocol)和代理(Delegate)
- objective-c基础知识(-)Categories、Protocol、delegate
- 面试题:关于Objective-C中的回调机制
- 细数Objective-C中的回调机制
- Objective-C中Delegate,Protocol与Interface的区别
- 窥探Swift之协议(Protocol)和委托代理(Delegate)回调的使用
- 细数Objective-C中的回调机制
- 细数Objective-C中的回调机制
- 【初学】Objective-C学习笔记-委托代理(delegate)和协议(protocol)
- 细数Objective-C中的回调机制
- 细数Objective-C中的回调机制
- 细数Objective-C中的回调机制
- 细数Objective-C中的回调机制
- OC 面试中的消息机制:KVO,NSNotification,Delegate,Protocol
- 面试题:关于Objective-C中的回调机制
- Objective-C protocol & delegate
- iOS 开发-Objective-c基础:协议和代理delegate&protocol)