[valueForUndefinedKey:]:此类与键约会日期的键值编码不兼容.

编程入门 行业动态 更新时间:2024-10-05 19:16:19
本文介绍了[valueForUndefinedKey:]:此类与键约会日期的键值编码不兼容. -迅速的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我想对对象数组进行排序是我对对象数组进行排序的功能

i want to sort an array of object below is my function to sort the array of object

class func Fn_SortByParameter(arrayToSort:NSMutableArray,paramName:NSString!, isAscending:Bool!){ var sortDescriptor:NSSortDescriptor = NSSortDescriptor(key: paramName, ascending: isAscending, selector: Selector("localizedCompare:")) var sortDescriptors:NSArray = NSArray(object: sortDescriptor) var sortedArray:NSArray = arrayToSort.sortedArrayUsingDescriptors(sortDescriptors) arrayToSort.removeAllObjects() arrayToSort.addObjectsFromArray(sortedArray) }

AND

class func Fn_SortByParameter(arrayToSort:NSMutableArray,paramName:NSString!, isAscending:Bool!){ var sortDescriptor:NSSortDescriptor = NSSortDescriptor(key: paramName, ascending: isAscending) var sortDescriptors:NSArray = NSArray(object: sortDescriptor) var sortedArray:NSArray = arrayToSort.sortedArrayUsingDescriptors(sortDescriptors) arrayToSort.removeAllObjects() arrayToSort.addObjectsFromArray(sortedArray) }

数组包含以下类的对象

class Appointment: NSObject { var id:Double! var status:NSString! var clinic:Clinic! var medicalCase:MedicalCase! var patient:Patient! var appointmentDate:Double! // Unix timestamp var reasonForVisit:NSString! var cancellationReason:NSString! var visit:Visit! }

当我尝试排序时,它崩溃并显示以下错误

When i am trying to sort it is crashing with below error

[valueForUndefinedKey:]:此类与键约会日期的键值编码不兼容.'

[ valueForUndefinedKey:]: this class is not key value coding-compliant for the key appointmentDate.'

函数调用进行排序

Fn_SortByParameter(allAppointments.aaData, paramName: "appointmentDate", isAscending: true)

推荐答案

您遇到的问题是,像Double!这样的可选值类型没有暴露给Objective-C运行时,也不可用于键值编码

The problem you're running into is that optional value types like Double! are not exposed to the objective-c runtime and not available for key-value coding.

您可以将其设置为非可选:var appointmentDate:Double,使用NSNumber对象:var appointmentDate:NSNumber!,或使用Swift数组和内置的sorted函数.

You can make it non-optional: var appointmentDate:Double, use an NSNumber object: var appointmentDate:NSNumber!, or use a Swift array and the built-in sorted function.

更多推荐

[valueForUndefinedKey:]:此类与键约会日期的键值编码不兼容.

本文发布于:2023-11-26 19:00:44,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1634801.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:此类   键值   不兼容   日期   valueForUndefinedKey

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!