IOS protocol 用法

  协议,是经过网络,计算机使用者进行通信后,互相进行约定规定的集合。两个类进行通信,用协议就比较方便。下面是 CocoaChina 版主“angellixf”为新手写的协议入门介绍以及代码例子,但愿对刚入门开发者有所帮助网络

1、说明
  1.协议声明了能够被任何类实现的方法
  2.协议不是类,它是定义了一个其余对象能够实现的接口
  3.若是在某个类中实现了协议中的某个方法,也就是这个类实现了那个协议。
  4.协议常常用来实现委托对象。一个委托对象是一种用来协同或者表明其余对象的特殊对象。
  5:委托,就是调用本身定义方法,别的类来实现。
  6.新特性说明
    @optional预编译指令:表示能够选择实现的方法
    @required预编译指令:表示必须强制实现的方法

2、定义

.h
@protocol ContactCtrlDelegate
-(void)DismissContactsCtrl;
@end

@interface ContactsCtrl : UIViewController {
    id <ContactCtrlDelegate> delegate;
}
@property (nonatomic, assign) id <ContactCtrlDelegate> delegate;


.m
@synthesize delegate;


3、例子

例如:UITextView
@protocol UITextViewDelegate <NSObject>

@optional

- (BOOL)textViewShouldBeginEditing:(UITextView *)textView;
- (BOOL)textViewShouldEndEditing:(UITextView *)textView;ide



- (void)textViewDidBeginEditing:(UITextView *)textView;
- (void)textViewDidEndEditing:(UITextView *)textView;

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text;
- (void)textViewDidChange:(UITextView *)textView;

- (void)textViewDidChangeSelection:(UITextView *)textView;ui

相关文章
相关标签/搜索