美文网首页
Swift中代理定义使用

Swift中代理定义使用

作者: 小黑技术 | 来源:发表于2022-03-31 10:02 被阅读0次

简单分为以下六步:

1.委托方 定义协议, 只要遵守协议, 都能使用我的委托方法

2.委托方 定义协议方法

3.委托方 声明代理属性

4.委托方 执行代理

5.被委托方 遵守代理协议, 第一次实例化委托方时 设置代理

6.被委托方 调用代理方法

// 01. 定义协议

protocol LeftItemDelegate: NSObjectProtocol{

    // 02. 定义协议方法

    func ItemSelectIndexPathClick (IndexPath:Int)

}

  // 03. 声明代理属性 (注:使用weak修饰, 该协议需要继承NSObjectProtocol基协议, 且注意代理名称是否重复)

      weak var delegate: LeftItemDelegate?

        // 04. 执行代理

        delegate?.ItemSelectIndexPathClick(IndexPath: indexPath.row)

 // 05.2 在第一次实例化 LeftView 的时候, 设置代理

        LeftView.delegate = self

// 05.1 遵守代理协议

/** extension

 -- extension 类似于 OC 中的 Category

 -- 格式: extension 类名 {}

 -- Swift中 代码可读性差, 通过 extension 完成代码分块, 增强可读性, 单一模块单独处理, 增大了当前类的作用域

 -- extension 中 可以添加计算型属性 不能添加存储型属性; 可以定义便利构造函数 不能定义指定构造函数

 */

extension MainRootController: LeftItemDelegate{

    // 06. 实现代理方法

    func ItemSelectIndexPathClick(IndexPath: Int) {

        print("ViewController中监听到了按钮点击")

        simpleManager.scrollToIndex(index: IndexPath)

    }

}

相关文章

  • Swift中代理定义使用

    简单分为以下六步: 1.委托方 定义协议, 只要遵守协议, 都能使用我的委托方法 2.委托方 定义协议方法 3.委...

  • 代理模式

    swift中代理的使用1.首先定义一份协议。 2.定义一个代理属性//声明代理属性 使用的时候,首先加上 4.并且...

  • Swift3.0 Delegate和Block的实现

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

  • Swift中代理的使用

    和OC中完全相同, 简单分为以下六步: 委托方 定义协议, 只要遵守协议, 都能使用我的委托方法委托方 定义协议...

  • Swift学习笔记(二)

    Swift函数 Swift函数包含参数类型和返回值类型 函数定义 Swift使用关键字func定义函数。 函数定义...

  • 初学Swift 小总结

    Swift 01 Swift最基本的语法变化 Swift 变量&常量 变量使用 let 定义常量,定义后的常量不能...

  • Swift中代理使用篇(一)

    本文首发地址代理Delegate是程序中最常用的功能之一,不亚与Swift中的闭包。今天就带来一个示范,说说在Sw...

  • Swift 基础笔记 - 枚举

    枚举 OC定义和使用枚举 Swift定义枚举类型 Swift判断枚举类型 枚举成员类型

  • OC中调用swift的代理

    swift中代理的声明: OC中的实现:

  • Swfit语法tips

    关于函数和闭包的介绍 在Swift中定义的Enum,OC中使用 Swift中定义如下,注意@objc 在OC中使用...

网友评论

      本文标题:Swift中代理定义使用

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