Ios 快速错误块
我正在尝试将我的Ios 快速错误块,ios,objective-c,swift,Ios,Objective C,Swift,我正在尝试将我的objectiveC应用程序转换为swift,我可以完成大部分工作,但这里有一些混乱 我的ObjectiveC代码是 -(void)getResponseFromURL:(NSString *)strURL withParams:(NSMutableDictionary *)dictParams success:(void (^)(AFHTTPRequestOperation *operation, id responseObject, bool isSuccess
objectiveC
应用程序转换为swift
,我可以完成大部分工作,但这里有一些混乱
我的ObjectiveC
代码是
-(void)getResponseFromURL:(NSString *)strURL
withParams:(NSMutableDictionary *)dictParams
success:(void (^)(AFHTTPRequestOperation *operation, id responseObject, bool isSuccess))blockSuccess
failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))blockFailure
showLoader:(BOOL)isShowDefaultLoader
showAnimated:(BOOL)isShowLoaderAnimated hideLoader:(BOOL)isHideDefaultLoader
{ //some code here }
我的Swift
代码
func getResponseFromURL(strURL: String, withParams dictParams:Dictionary,
Success:(operation:AFHTTPRequestOperation, responseobject:AnyObject, isSucces:Bool)->void,
Failure:(operation:AFHTTPRequestOperation, error:NSError)->void,
showLoader isShowDefaultLoader:Bool,
showAnimated isShowLoaderAnimated:Bool, hideLoader isHideDefaultLoader:Bool){
// Some code here
}
但是它给了我一些错误我想我错过了一些技巧…但我不知道那是什么…
那么如何消除这个错误呢?在Swift中,它是
无效的。“V”必须是大写字母
func getResponseFromURL(strURL: String, withParams dictParams:NSDictionary,
Success:(operation: AFHTTPRequestOperation, responseobject:AnyObject, isSucces:Bool)->(),
Failure:(operation: AFHTTPRequestOperation, error:NSError)->(),
showLoader isShowDefaultLoader:Bool,
showAnimated isShowLoaderAnimated:Bool, hideLoader isHideDefaultLoader:Bool){
// Some code here
}
在Swift中,使用Void
,而不是Void
Swift中的字典是通用的,您需要将其指定为字典
更新:
多亏了,使用[AnyObject:AnyObject]
而不是字典显示,()与Swift中的Void
相同,都表示空元组。是的,你是对的,那字典错误怎么办?我稍后会在Mac上检查。为什么不使用Void和为什么使用nsdictionary?字典是通用的,你可以使用Void,因为我喜欢()
所以()和Void在swiftYes中也有同样的影响,如果你使用block,它就很好了。嗯……在新的Swift语法中,很好的解释是[AnyObject:AnyObject]
好的……谢谢你的回答和很好的解释……而且@WenchenHuang在这个例子中也是正确的如果让Dictionary=dictParams{否则{//做你想做的}
或如果dictParams!=无{//做你想做的}
让我们来。