blo

作者: liuguilin | 来源:发表于2017-09-04 19:03 被阅读0次

    入门级


    此处只简单举例并不深究。对于初学者来说delegate或block都不是一下子能理解的,所以我的建议和体会就是,理不理解咱先不说,我先把这个格式记住,对就是格式,delegate或block都是高度格式化的,用的多了自然而然不理解也就理解了。


    B界面

    1. 在B中声明一个block

    typealias myBlock = (_ str :String)->Void

    2.声明一个变量

    var textBlock:myBlock?

    3. 定义一个方法,方法的参数为和myBlock类型一致的闭包,并赋值给textBlock

    func backValue(_ block: @escaping myBlock) {

    textBlock = block

    }

    4. 调用闭包,设置你想传递的参数,调用前先判定一下,是否已实现

    if textBlock != nil {

    textBlock!(self.textF.text!)

    }

    A界面

    1. 实现闭包,获取到传递的参数

    seconedVC.backValue { (text) in

    self.label.text = text

    }

    github下载地址Demo:https://github.com/liuguilin/block

    相关文章

      网友评论

          本文标题: blo

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