【问题标题】:How to convert completion block of Objective-C to Swift?如何将 Objective-C 的完成块转换为 Swift?
【发布时间】:2015-06-06 19:47:29
【问题描述】:

我尝试将 Objective-C 块语法转换为 Swift Xcode 6.3.2

完成块类型定义:

typealias CompletionWithBoolBlock = (Bool, NSError, NSString) -> Void

[Model insertObjectWithTable:@"tblStudent" values:dict completion:^(BOOL success, NSError *responseError, NSString *object){
        
        if(success){
            NSLog(@"inserted");
        }
        else
        {
             NSLog(@"Not inserted, %@",responseError.description);
        }
    }];

在网上冲浪后,我尝试了

    Model.insertObjectWithTable("tblStudent", values: dict, completion:({(success:Bool,responseError:NSError, object:NSString)->(Void) in
        
        if success
            {
                println("inserted")
            }
            else
            {
                 println("Not inserted \(responseError.description)")
            }
        })
}

    Model.insertObjectWithTable("tblStudent", values: dict, completion:(success:Bool,responseError:NSError, object:NSString)->Void{
        
        if success
            {
                println("inserted")
            }
            else
            {
                 println("Not inserted \(responseError.description)")
            }
        })

但它显示错误

预期的 ',' 分隔符

表达式列表中的预期表达式

【问题讨论】:

    标签: objective-c swift completion-block


    【解决方案1】:

    你试过了吗

    Model.insertObjectWithTable("tblStudent", values: dict, completion:{(success:Bool, responseError:NSError, object:NSString) -> Void in
        if success {
            println("inserted")
        } else {
            println("Not inserted \(responseError.description)")
        }
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多