objective-c - 无法将类型 'Swift._SwiftDeferredNSDictionary<Swift.String, Swift.Double>' (0x11b1b84f8) 的值转换为 'NSMutableDictionary'

标签 objective-c swift crash type-conversion

我正在调用一个用 Objective C 编写的方法,

-(void)fetchWithDetails:(NSMutableDictionary*)details
                  success:(void (^)(id response))success
                  failure:(void (^)(NSError *error,NSString *userMessage))failure;

在 Swift 中,我将 Objective-C 方法称为:

ULWebServiceStoreUtility.fetch(withDetails: parameters as! NSMutableDictionary , success: { (response) in ....}, failure: { error, userMessage in ...})

但我遇到了崩溃错误:无法将类型“Swift._SwiftDeferredNSDictionary”(0x11b1b84f8)的值转换为“NSMutableDictionary”

那么有人可以指导我如何在 Swift 中传递 NSMutableDictionary 吗?

最佳答案

NSDictionary 不能直接转换为 NSMutableDictionary。类型不同。

你可能需要这样的东西:

fetch(withDetails: NSMutableDictionary(dictionary: parameters), ...)

关于objective-c - 无法将类型 'Swift._SwiftDeferredNSDictionary<Swift.String, Swift.Double>' (0x11b1b84f8) 的值转换为 'NSMutableDictionary',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51071747/

相关文章:

java - Objective-C : enum like Java (int values and many others for each enum)

ios - 在 iOS 的专辑封面上显示一些图像

ios - 调用 sqlite3_column_type 返回 SQLITE_INTEGER 用于仅包含导致整数溢出的数字的 STRING 列

ios - Xcode 9.2 在打开 Product --> Profile 后崩溃

iphone - 我的 NSLog 输出在哪里?

swift - 对象映射器将我的值设置为可选值

ios - 我是否需要始终创建嵌套结构以从json响应中的嵌套模型中仅获取一个属性?

Json 解析 Swift 3 Alamofire

linux - 当进程崩溃时,操作系统是否会刷新 CPU 缓存?

wpf - AppDomain.UnhandeledException 事件未触发