zoukankan      html  css  js  c++  java
  • 代理协议详解

    代理

      在IOS开发中,代理很重要,代理是一对一的。当你在一个文件中做了某件事情,想告诉其它的文件,这时要用到代理。

      使用场合  专业术语:当A对象发生了一些事情,想告诉B对象,就然B成为A的代理

      B对象想监听A对象发生的一些事情,也让B成为A的代理。

      1.代理一般要定义一份协议:

        @protocol heardViewDelegate <NSObject>

           - (void)heardViewClick;//此方法代理必须实现如果想要代理不实现也可以,需要在方法前面加上@optional

         @end

      2.在头文件中声明一个代理属性

        @property (nonatomic, weak) id <heardViewDelegate>delegate;

      3.设置代理

         要想成为代理,必须要遵守协议

        @interfaceYGQViewController () <heardViewDelegate>//遵守协议

        heard.delegate = self;//让控制器成为它的代理

      4.实现代理方法

        - (void)heardViewClick

      {

          [self.tableViewreloadData];

      }

      5.代理只能设置一个代理属性,只能告诉一个人

      6.如果想要多个人都知道你做了什么事,想让很多人都知道,那么就用通知。

      7.严谨的写法

      if ([_delegate respondsToSelector:@selector(heardViewClick:)]) {//如果代理实现了这个方法

              [_delegate heardViewClick:self];//那么就调用代理的heardview的这个方法

            }

  • 相关阅读:
    JDK有关环境变量的配置
    installation Manager的那回事
    WMB ESQL报文函数截取新的XML方法
    mb常用操作指令
    DB2报错SQLSTATE=57017 code page "1392"
    DB2操作命令
    MQ7.1及高版本的新特性
    Java项目打jar包及外部运行
    loadrunner
    Ireport5那些事
  • 原文地址:https://www.cnblogs.com/yinqiang/p/3460286.html
Copyright © 2011-2022 走看看