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的这个方法

            }

  • 相关阅读:
    奇迹银桥「1」
    20190729-“退役”专场
    20190727-只是睡着了
    $mathcal{Miemeng}$的病态码风计划
    20190725-Silly
    作业-[luogu4396][AHOI2013]-莫队
    数学网学笔记
    20190722-Moni和Boly的故事
    数学学习笔记
    20190719-FirstZero
  • 原文地址:https://www.cnblogs.com/yinqiang/p/3460286.html
Copyright © 2011-2022 走看看