协议(Protocol)的用法
来源:互联网 发布:sqlserver 2012 下载 编辑:程序博客网 时间:2024/05/17 03:58
协议(Protocol)的用法
协议,是通过网络,计算机使用者进行通讯后,互相进行约定规定的集合。两个类进行通讯,用协议就比较方便。
一、说明
1.协议声明了可以被任何类实现的方法
2.协议不是类,它是定义了一个其他对象可以实现的接口
3.如果在某个类中实现了协议中的某个方法,也就是这个类实现了那个协议。
4.协议经常用来实现委托对象。一个委托对象是一种用来协同或者代表其他对象的特殊对象。
5:委托,就是调用自己定义方法,别的类来实现。
6.新特性说明
@optional预编译指令:表示可以选择实现的方法
@required预编译指令:表示必须强制实现的方法
(1)(2)我自己全权负责,但是后面(3)(4)(5)我不想或者不方便自己做,所以我想找个助手(delegate)帮我做这些事,于是我定了一个招聘要求(Protocol),里写明我的助手需要会做(3)(4)(5)这三件事。很快,我招到一个助手。
我.delegate = 助手;
于是以后每当我遇到需要测试程序或者接电话的活,我就把他转交给助手(delegate)去处理,助手处理完后如果有处理结果(返回值)助手会告诉我,也许我会拿来用。如果不需要或者没有结果,我就接着做下面的事。。
协议,是通过网络,计算机使用者进行通讯后,互相进行约定规定的集合。两个类进行通讯,用协议就比较方便。
一、说明
1.协议声明了可以被任何类实现的方法
2.协议不是类,它是定义了一个其他对象可以实现的接口
3.如果在某个类中实现了协议中的某个方法,也就是这个类实现了那个协议。
4.协议经常用来实现委托对象。一个委托对象是一种用来协同或者代表其他对象的特殊对象。
5:委托,就是调用自己定义方法,别的类来实现。
6.新特性说明
@optional预编译指令:表示可以选择实现的方法
@required预编译指令:表示必须强制实现的方法
实例:
B页面Controller添加A页面view,然后在A页面push到C页面Controller,我们知道view不能push到Controller,只能在A页面 委托B页面 push跳转C页面
A.h 声明
@protocol SettingViewDelegate <NSObject>
@optional
-(void)settingViewPushView ;
@end
@interface A:UIView{
id <SettingViewDelegate> delegate ;
}
@property (nonatomic,retain) id <SettingViewDelegate> delegate ;
A.m
@synthesize delegate ;
实现方法:[delegate settingViewPushView];
B.h声明
@interface b : UIView <SettingViewDelegate>
B.m
a.delegate=self;
并且写上push到C页面的方法
-(void)settingViewPushView{
。。。。。。
}
简单的说:
我上班的工作主要内容包括 (1)写代码(2)写文档(3)测试程序(4)接电话(5)会见客户(1)(2)我自己全权负责,但是后面(3)(4)(5)我不想或者不方便自己做,所以我想找个助手(delegate)帮我做这些事,于是我定了一个招聘要求(Protocol),里写明我的助手需要会做(3)(4)(5)这三件事。很快,我招到一个助手。
我.delegate = 助手;
于是以后每当我遇到需要测试程序或者接电话的活,我就把他转交给助手(delegate)去处理,助手处理完后如果有处理结果(返回值)助手会告诉我,也许我会拿来用。如果不需要或者没有结果,我就接着做下面的事。。
- 协议(Protocol)的用法
- protocol协议的简单用法
- 协议的用法 ios protocol
- 协议(Protocol)的用法和代码例子
- 协议(Protocol)的用法和代码例子 摘
- 协议(Protocol)的用法和代码例子 摘
- 协议(Protocol)的用法和代码例子
- 协议(Protocol)的用法和代码例子
- 协议(Protocol)的用法和代码例子 ios
- 协议(Protocol)的用法和代码例子 有demo
- 协议(Protocol)的用法和代码例子
- iOS中协议(Protocol)的简单用法
- 协议(Protocol)的用法和代码例子
- 协议(Protocol)的用法和代码例子
- OC 协议(Protocol)的基本概念和用法
- iOS中使用协议(protocol)的用法
- swift 协议Protocol的基本用法
- 协议(Protocol)用法专题总结
- 企业采用云计算的战略路线图
- 定时器配置
- 关于visual basic6.0的鼠标滚轮修复
- Oracle Data encrypted
- Linux 固件子系统----如何更新固件
- 协议(Protocol)的用法
- My Review of Hadoop Summit 2011
- 使用JXL生成Excel时发生java.lang.ArrayIndexOutOfBoundsException错误
- 关于self.用法的一些总结
- 黑马程序员-字符串
- 中断处理--上下半部机制
- IOS传值、变量共享方式
- 几个不错的C++/VC++网站(个人收藏额~~)
- MFC学习之路(五)让人菊花一紧的错误