文档章节

闭包/Block当成函数参数实现回调

宁音雨雾
 宁音雨雾
发布于 2016/05/25 16:35
字数 140
阅读 46
收藏 0

 


Swift

    // MARK:
    // MARK: 获取数据
    
    /// 获取数据
    
    class func toolLoadData(completion:(finish: String) -> ()? ,content: String) {
        
        self .nextStepRequest({ (finish) -> ()? in
            
            // 接收到数据 调用 block 传递数据
            completion(finish: finish);
            
            }, content: "");
        
    }
    
    // MARK:
    // MARK: 下一步请求
    
    /// 下一步请求
    
    private class func nextStepRequest(completion:(finish: String) -> ()? ,content: String) {
        
        // 获取数据成功 调用block 传递数据
        completion(finish: "data");
        
    }

OC

/// 获取数据
+ (void)toolLoadData:(NSString *)content completion:(void (^)(NSString *finish))completion {

    [self nextStepRequest:@"" completion:^(NSString *finish) {
       
        // 调用 block
        completion(finish);
    }];
    
}


/// 下一步请求
+ (void)nextStepRequest:(NSString *)other completion:(void (^)(NSString *finish))completion {

    completion(@"data");
    
}

Swift和OC->Demo点此下载

 

© 著作权归作者所有

上一篇: image进行GZIP压缩
下一篇: 选择视图
宁音雨雾
粉丝 55
博文 312
码字总数 48631
作品 0
东城
程序员
私信 提问
OC中的block与Swift中的尾随闭包的使用

girl.png   OC中的block与Swift中的尾随闭包都起到了将参数作为返回值的作用,也就是常说的回调。 1. block的使用   在OC中block主要分为三种,分别是 (1)NSConcreteGlobalBlock 全局静...

小时候De_我
2017/11/28
0
0
Swift实现代理,通知,闭包传值

1.区别 原文链接,著作权归作者所有,侵权删 第一就是代理,这也是很常用的方式,特点是一对一的形式,而且逻辑结构非常清晰。实现起来较为简单:写协议 ,设置代理这个属性, 最好在你想通知代...

ufo00001
2017/08/14
0
0
了解 Ruby 中的闭包 : blocks , procs 和 lambdas

虽然Ruby也许不是一个Haskell或者Clojure那种意义的函数式语言,但它支持很多函数式语言的范式。函数式语言的一个很重要的特性就是它们支持first-class函数(译注:first-class function有译为...

Wyatt
2013/01/11
869
3
窥探 Swift 之 函数与闭包的应用实例

窥探 Swift 之 函数与闭包的应用实例 今天的博客算是比较基础的,还是那句话,基础这东西在什么时候都是最重要的。说到函数,只要是写过程序就肯定知道函数是怎么回事,今天就来讨论一下Swi...

法斗斗
2016/06/22
9
0
douban-objc-client

douban-objc-client 是一个 Objective C 实现的 豆瓣 API 客户端。现在仅支持 iOS。 1.提供 OAuth2 所需参数 DOUService *service = [DOUService sharedInstance];service.clientId = kAPIK......

匿名
2012/02/28
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

最简单的获取相机拍照的图片

  import android.content.Intent;import android.graphics.Bitmap;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import andr......

MrLins
47分钟前
4
0
说好不哭!数据可视化深度干货,前端开发下一个涨薪点在这里~

随着互联网在各行各业的影响不断深入,数据规模越来越大,各企业也越来越重视数据的价值。作为一家专业的数据智能公司,个推从消息推送服务起家,经过多年的持续耕耘,积累沉淀了海量数据,在...

个推
49分钟前
7
0
第三方支付-返回与回调注意事项

不管是支付宝,微信,还是其它第三方支付,第四方支付,支付机构服务商只要涉及到钱的交易都要进行如下校验,全部成功了才视为成功订单 1.http请求是否成功 2.校验商户号 3.校验订单号及状态...

Shingfi
51分钟前
4
0
简述Java内存分配和回收策略以及Minor GC 和 Major GC(Full GC)

内存分配: 1. 栈区:栈可分为Java虚拟机和本地方法栈 2. 堆区:堆被所有线程共享,在虚拟机启动时创建,是唯一的目的是存放对象实例,是gc的主要区域。通常可分为两个区块年轻代和年老代。更...

DustinChan
57分钟前
6
0
Excel插入批注:可在批注插入文字、形状、图片

1.批注一直显示:审阅选项卡-------->勾选显示批注选项: 2.插入批注快捷键:Shift+F2 组合键 3.在批注中插入图片:鼠标右键点击批注框的小圆点【重点不可以在批注文本框内点击】----->调出批...

东方墨天
今天
6
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部