首页 > 其他 > 详细

ios 自定义delegate(一)

时间:2014-02-19 19:37:01      阅读:392      评论:0      收藏:0      [点我收藏+]

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

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

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

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

 

@interface NSClass :NSObject

id<BSDelegate> delegate;

@end

 

@property(assian) id<BSDelegate> delegate;

 

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

@synthesize delegate;

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

 

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

例如:

[delegate respondsToSelector@selector(OnOption:)]

然后调用。

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

[delegate OnRequired:@"test"]

 

其它类中声明和使用协议

@interface UIMyView : UIViewController<BSDelegate>

      NSClass *m_pClass;

@end

 

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

m_pClass.delegate = self;

再实现委托方法:

- (void)OnOption:(NSString *)pStr

{
}

 

- (void)OnRequire:(NSString *)pStr

{
}

ios 自定义delegate(一)

原文:http://www.cnblogs.com/yulang314/p/3555256.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!