Protocol

Protocol(协议):协议就是我定的一些方法,找一个人来帮我实现.协议里的方法有两种一种

 
(@required)必须执行,第二种(@optional)可选择性执行.
 
协议只是一堆方法的声明,也就是说协议只有.h文件,没有.m文件,谁遵守协议,谁就要实现协议里的规定的方法.协议通常与代理一起出现.
 
创建协议文件
Object-C protacol
 
生成ProtacolName.h
 
@protocol ProtacolName<NSObject>
 
@required
 
//必需实现的方法
 
@optional
 
//选择性实现的方法
 
@end;
 
有Protocol(协议)必需有delegate(代理).通俗来讲就是代理商,主要的任务是帮你完成一些任务.
 
首先创建一个类对象
xxx.h
@interface xxx : NSObject
{
//创建一个实例变量.
//为实例变量创建一个代理
id<ProtocolName> _代理变量名
}
 
//声明实例变量set/get方法
//同样也要声明代理变量的set/get方法
 
//实例变量初始化
//注意代理变量不需要初始化
 
//声明一些实例变量方法
//声明需要代理完成的方法
 
@end;
 
xxx.m
@implementation xxx
//实现实例变量set/get方法
//实现代理的set/get方法
- (void)setDelegate:(id<ProtocolName>)delegate
{
_delegate = delegate;
}
- (id<ProtocolName>)delegate
{
return _delegate;
}
 
//实现方法
//实现需要代理完成的方法
- (void)methodName
{
[_delegate ProtocolMethod];
}
@end;

转载于:https://www.cnblogs.com/ixiaofeng/p/4418700.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值