【IOS学习】Objective-C 协议,以及demo
来源:互联网 发布:泛函是什么 知乎 编辑:程序博客网 时间:2024/06/07 20:25
协议:类似于C++纯虚基类,提供方法,由其他类实现。
委托:类似于java的接口,接口定义了方法,由其他的类申明实现接口,并实现接口。
委托实际上是一个过程、一种实现方式,由另一个类来完成一个类的操作
可以参照此贴查看委托的另类实现
http://blog.csdn.net/zhuiyi316/article/details/7818149
但是可以看到那种实现是通过类作为另一个类的属性完成的
详细代码参照:https://github.com/caigee/iosdev_sample下的
DelegateSample
委托:类似于java的接口,接口定义了方法,由其他的类申明实现接口,并实现接口。
委托实际上是一个过程、一种实现方式,由另一个类来完成一个类的操作
可以参照此贴查看委托的另类实现
http://blog.csdn.net/zhuiyi316/article/details/7818149
但是可以看到那种实现是通过类作为另一个类的属性完成的
OC的协议实际上是为了解耦而产生的,目的就是为了让程序更加简单,容易扩充
@protocol textSendDelegate;@interface NextVC : UIViewController// 协议的实例@property (nonatomic,assign)id<textSendDelegate> delegate;@end// 协议的声明@protocol textSendDelegate <NSObject]]>//一定要实现的@required-(void)textSend:(NSString *)textString;//可选实现@optional-(void)logOfTextSend;@end
// 协议方法的触发if (self.delegate && [self.delegate respondsToSelector:@selector(textSend:)]) { [self.delegate textSend:_myTextField.text]; } if (self.delegate && [self.delegate respondsToSelector:@selector(logOfTextSend)]) { [self.delegate logOfTextSend]; }
// 申明协议实现@interface RootVC : UIViewController<textSendDelegate>//协议的绑定 NextVC *next = [[NextVC alloc]init]; next.delegate =self;// 协议实现-(void)textSend:(NSString *)textString{ self.displayLabel.text = textString;}-(void)logOfTextSend{ NSLog(@"a text is send to RootVC");}
详细代码参照:https://github.com/caigee/iosdev_sample下的
DelegateSample
0 0
- 【IOS学习】Objective-C 协议,以及demo
- ios学习路线—Objective-C(Runtime 协议与分类)
- iOS学习(二十七)Objective-C 协议
- iOS-学习 Objective-C
- iOS学习笔记07—Objective-C 委托、非正式协议、正式协议
- iOS学习笔记07—Objective-C 委托、非正式协议、正式协议
- IOS学习 一 Objective-C
- IOS 开发学习(1): 学习纲领以及Objective-C 基本语法学习
- IOS 开发学习(1): 学习纲领以及Objective-C 基本语法学习
- IOS 开发学习(1): 学习纲领以及Objective-C 基本语法学习
- IOS 开发学习(1): 学习纲领以及Objective-C 基本语法学习
- objective c 学习笔记:分类和协议
- objective c学习:协议(protocol)
- Objective-C学习笔记第十三章协议
- 【Objective-C学习笔记】协议protocol
- 学习笔记(objective-c)-协议(protocol)
- IOS学习笔记5—Objective C—类别和协议
- ios学习笔记(二)之Objective-C类、继承、类别和协议 - superlucky
- 数据结构——算法之(036)(输出字符串的所有排列)
- AVAudioRecorder录音和AVAudioPlayer播放声音小的问题!
- Android短信发送器
- 解方程 (允许误差)
- uva 111
- 【IOS学习】Objective-C 协议,以及demo
- 筑梦创想:登陆钓鱼岛Unity3d工程文件发布啦!包括后台程序
- kinect学习笔记2
- IOS 使用相机或者在相册里获取图片
- Android 事件传递机制
- IOS delegate与protocol
- Android-HTTP通讯总结!
- android api分析09 实例
- 堪称最好的A*算法