2015-06-06 38 views
0

我在迅速的新尝试客观C座语法转换迅速的Xcode 6.3.2如何将目标c的完成块转换为Swift?

完成块的typedef:

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)") 
      } 
     }) 

但它显示我错误

预计 '' 分隔符

在表达式列表预计表达

回答

2

你试过

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