当前位置:编程学习 > wap >>

IOS 自定义协议

在自定义协议的头文件 .h中

@protocol NSDelegate <NSObject>
@optional  //可选

- (void)OnOption:(NSString *)pStr;


@required //必须
- (void)OnRequired:(NSString *)pStr;
@end

 

@inte易做图ce NSClass :NSObject


id<BSDelegate> delegate;

@end

 

@property(assian) id<BSDelegate> delegate;

 


在自定义协议的实现文件.m中

@synthesize delegate;

 在制定协议实现文件中调用协议


如果委托方法是可实现的,可以在调用委托方法的用respondsToSelector来判断是否已经实现了委托方法。

例如:

[delegate respondsToSelector@selector(OnOption:)]

然后调用。
如果是必须实现的则直接调用:

[delegate OnRequired:@"test"]

 

 

其它类中声明和使用协议


@inte易做图ce UIMyView : UIViewController<BSDelegate>

      NSClass *m_pClass;

@end

 


UIMyView 的.m文件中制定委托并实现相关委托方法


m_pClass.delegate = self;

再实现委托方法:

- (void)OnOption:(NSString *)pStr

{
}


- (void)OnRequire:(NSString *)pStr

{
}


 

补充:移动开发 , IOS ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,