ios 设置委托delegate

为了进行页面传值,也可以用委托的方法。

下面以时间控件为例。

1.首先,在.h 文件设置委托

#import <UIKit/UIKit.h>



@protocol DatePickerViewDelegate;



@class DatePickerView;

@interface DatePickerView :UIView



@property (strong, nonatomic) NSString      *dateContent;

@property (strong, nonatomic) UIDatePicker *datePicker;

@property (assign, nonatomic) id<DatePickerViewDelegate> delegate;



-(void)show;

@end



@protocol DatePickerViewDelegate <NSObject>

-(void)datePicker:(DatePickerView *)pickerView Picked:(NSDate *)date; //定义方法

@end

2.然后在.m文件设定委托传值

-(void)setBtnAction:(id)sender

{

    [_delegate datePicker:self Picked:self.datePicker.date];  //一定要执行,要不然不会触发下面的,方法-(void)datePicker:(DatePickerView *)pickerView Picked:(NSDate *)date;

}

3.在其他页面设置委托
在.m文件中添加

@interfaceQuQueryViewController () <DatePickerViewDelegate>

@end

1.然后设置委托

DatePickerView *datePicker = [[DatePickerView alloc]init]; //先事实例化

datePicker.delegate = self;  //设置委托

datePicker.flag = sender;

[datePicker show];

2.最后实现方法

-(void)datePicker:(DatePickerView *)pickerView Picked:(NSDate *)date;

{

       date为我们要获得的值。

}

 

你可能感兴趣的:(delegate)