使用谓词过滤数组时,应用程序崩溃-IOS -Swift 4

时间:2018-09-06 09:56:46

标签: ios swift

我目前在使用谓词过滤数组时遇到问题。

我有一个名为NoteModelClass的模型类

class NoteModelClass: NSObject {
    var Post_ID = Int()
    var NoteTitle = String()
    var NoteDescription = String()
    var FirstName = String()
    var LastName = String()
    var Address = String()
 }

我还调用了一个init方法将jsonObject解析为modelClass

init(dict:NSDictionary)
 {
        self.Post_ID = dict.value(forKey: "Post_ID") as! Int
        self.NoteTitle = dict.value(forKey: "NoteTitle") as! String
        self.NoteDescription = dict.value(forKey: 
        "NoteDescription") as! String
        self.FirstName = dict.value(forKey: "FirstName") as! String
        self.LastName = dict.value(forKey: "LastName") as! String
        self.Address = dict.value(forKey: "Address") as! String
}

我正在解析json数组

   for item in mainDict (array of json)
   {
      let model = NoteModelClass(dict: item as! NSDictionary)
      self.arrProperty.add(model);
   }

现在,当用户搜索时,我正在基于这样的搜索字符串过滤数组

 let predicate = NSPredicate(format: "NoteTitle CONTAINS[c] %@", "test”)
 arrFilterUsingSearch = self.arrProperty.filtered(using: predicate) as! NSMutableArray;

但是我在这行崩溃了

   arrFilterUsingSearch = self.arrProperty.filtered(using: predicate) as! NSMutableArray;

我也在diffrentProject中完成了相同的功能,但是我不知道自己在做什么错 我也将我的模型类放在数组中:

Printing description of ((_TtC11NoteBuyerGo14NoteModelClass *)0x166738e0):

<NoteBuyerGo.NoteModelClass: 0x166738e0>

任何人都可以给我解决方案或指导我这里做错了什么吗?

我对此感到困惑,任何人都可以在这方面帮助我。

我正在坠机:

*** Terminating app due to uncaught exception 'NSUnknownKeyException', 
reason: '[<NoteBuyerGo.NoteModelClass 0x14e5bdb0> 
valueForUndefinedKey:]: this class is not key value coding-compliant 
for the key NoteTitle.'

我们将不胜感激。

0 个答案:

没有答案