美文网首页iOS必须SwiftSwift_VIP专场汇总iOS Developer
oc程序员学习swift(二)- 协议代理使用

oc程序员学习swift(二)- 协议代理使用

作者: LJ_影子 | 来源:发表于2016-12-23 11:35 被阅读112次

        swift协议代理的使用跟oc的协议代理差不套多,不过语法上还是有不小的区别。swift使用协议的关键字:protocol,协议的语法:protocol Pro1{//这里定义属性或者方法},

        swift创建协议并声明代理属性:

        protocol    ViewControllerSDelegate {

                    funcViewControllerDelegateLoadDataOne();   // 不带参的

                    funcViewControllerDelegateLoadDataTwo(str:String); // 带参的

        }

       func doClick() {  // 点击触发的方法

                  self.delegate?.funcViewControllerDelegateLoadDataOne()//让代理去执行代理方法

      }

        控制器方法实现

        class  ViewController:UIViewController,ViewControllerDelegate {

              var   delegate:ViewControllerDelegate?;

              override   func   viewDidLoad() {

                       super.viewDidLoad()

                       self.delegate=self;

              }

              internal  func  ViewControllerDelegateLoadDataOne() {

              }

              func   ViewControllerDelegateLoadDataTwo(str:String) {

             }

       }

      oc拟定协议:

            @protocol  ViewControllerDelegate  <NSObject>

            @required//缺省属性,必须要实现

            - (void)show;//show是必须要实现

             @optional//可选实现

             - (void)show1;//show1是可实现也可不实现

            @end

           - (void) onClick { 

                    if([self.delegate respondsToSelector:@selector(show)]) {

                              [self.delegate show];

                   }

            }

            遵守协议

          @interface  ViewController()<ViewControllerDelegate>

           @end

           设置代理实现方法   

            - (void)viewDidLoad {

                     [superviewDidLoad];

                     self.delegate = self; // 设置代理

             }

             -(void) show {

            }

            -(void) show1{

            }

相关文章

  • oc程序员学习swift(二)- 协议代理使用

    swift协议代理的使用跟oc的协议代理差不套多,不过语法上还是有不小的区别。swift使用协议的关键字:...

  • Swift协议+代理

    Swift语言开发中使用协议+代理的用法和oc中是一样的,只不过变得是语法。现在就进入swift的协议+代理。 先...

  • Swift代理协议的安全使用

    文章 Swift代理协议的安全使用 概述 在Swift下,使用代理协议,并且检验代理对象的存在和协议函数是否被实现...

  • OC和JS交互(一):协议拦截

    协议拦截 通俗点理解,就是定义好一个协议,JS使用该协议来调用OC/Swift的方法,并且传值给OC/Swift。...

  • Swift代理

    一、swift代理如何使用?1.定义协议&代理变量&调用代理方法: 2.遵循代理&重写代理方法 二、如果有些代理方...

  • iOS中扩大button响应区域

    一、OC版 OC版使用: OC版实现: 二、swift版 swift版使用: 补充:由于BEButton继承UIB...

  • iOS OC与Swift混编

    一、Swift使用OC类的桥文件 二、OC使用Swift类的桥文件 三、配置信息 四、补充

  • OC协议与Swift协议的区别

    OC中的协议:1、受限于委托代理的含义,多⽤于不同类之间的传值与回调。 Swift的协议:1、可以通过协议 (ex...

  • swift4.1 系统学习十四 协议

    // 协议/*OC中也有协议,swift中的协议的作用与OC中基本一样,只是在写法上有一点区别。我们使用 prot...

  • Swift3.0 Delegate和Block的实现

    Swift3.0 中代理的使用方法一、声明协议1.制定协议 2.用weak定义代理 3.判断代理是否存在,让代理去...

网友评论

    本文标题:oc程序员学习swift(二)- 协议代理使用

    本文链接:https://www.haomeiwen.com/subject/aefkvttx.html