为什么Swift3中NSDictionary中的每个元素都必须属于' NSCopying'

时间:2016-10-12 06:26:40

标签: ios objective-c swift3

我正在将Swift 2.3中开发的大型项目转换为Swift 3.0,但在每个NSDictionary强制将值转换为NSCopying

这样做背后的技术原因是什么?

有没有办法克服词典中每个键值对的NSCopying

enter image description here

示例代码

let paramDict:NSMutableDictionary = NSMutableDictionary(objects:[
            currentDoctorDetail!.firstName!,
            currentDoctorDetail!.lastName!,
            "",
            categoryIdstr!.trimCharacter(),
            txtviewAddress!.text!.trimCharacter(),
            clinic_lat!,
            clinic_long!,
            txtCall.text!.trimCharacter(),
            txtEdlieNumber.text!.trimCharacter(),
            currentDoctorDetail!.doctorID!,
            appDel.currentLanguage], forKeys: ["first_name" as NSCopying,
                "last_name" as NSCopying,
                "designation" as NSCopying,
                "category_id" as NSCopying,
                "clinic_address" as NSCopying ,
                "clinic_lat" as NSCopying,
                "clinic_long" as NSCopying,
                "contact_number" as NSCopying,
                "edlie_number" as NSCopying,
                "user_id" as NSCopying,
                "lang" as NSCopying])

0 个答案:

没有答案