• 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为我们要获得的值。
    }
  • 相关阅读:
    Uncaught TypeError: Illegal invocation
    数组循环
    二维码
    验证码
    user_agent
    ip
    jquery操作dom
    php 正则
    hdu 4850 Wow! Such String! 欧拉回路
    leetcode Maximal Rectangle 单调栈
  • 原文地址:https://www.cnblogs.com/lihaibo-Leao/p/3257113.html
Copyright © 2020-2023  润新知