Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何从nsarray的nsarray中搜索特定联系人_Ios_Swift_Nsarray_Nspredicate - Fatal编程技术网

Ios 如何从nsarray的nsarray中搜索特定联系人

Ios 如何从nsarray的nsarray中搜索特定联系人,ios,swift,nsarray,nspredicate,Ios,Swift,Nsarray,Nspredicate,我已经按字母顺序存储了联系人,所以我在屏幕上显示了联系人列表的数组。现在我想通过姓名搜索联系人,但谓词在这里不能正常工作。我已经完成了以下代码 filterArray.filterUsingPredicate(NSPredicate(format: "ANY SELF.name CONTAINS[cd] '\(tfSearchBar.text!)'", argumentArray: nil)) 首先在过滤器数组中,我拥有所有联系人,但当我搜索“a”时,它会给出联系人名称中包含“a”的所有

我已经按字母顺序存储了联系人,所以我在屏幕上显示了联系人列表的数组。现在我想通过姓名搜索联系人,但谓词在这里不能正常工作。我已经完成了以下代码

   filterArray.filterUsingPredicate(NSPredicate(format: "ANY SELF.name CONTAINS[cd] '\(tfSearchBar.text!)'", argumentArray: nil))
首先在过滤器数组中,我拥有所有联系人,但当我搜索“a”时,它会给出联系人名称中包含“a”的所有节数组。但我在这里卡住了。该部分的所有联系人不必在联系人名称中包含“a”

比如说

(
    A:(
        {
            name = "abc"
            number = "123456"
        }
        {
            name = "azx"
            number = "123456"
        }
      )
)

例如,在搜索“a”之后,上面的示例。当我搜索“ab”时,同一个数组通过谓词返回。不仅仅是第一个对象。任何只找到没有嵌套谓词的第一个对象的方法。

我不确定谓词中的“Any”这个词要实现什么,但它似乎是多余的。当将此代码放入操场时,其工作原理与您描述的相同:

import UIKit

@objc class DataElement : NSObject {
    let name : String
    let number : String

    init(name : String, number : String) {
        self.name = name
        self.number = number
    }
}

let dataArray : NSArray = [
    DataElement(name: "abc", number: "123456"),
    DataElement(name: "azx", number: "689101")
]

let searchTerm = "a"
let predicate = NSPredicate(format: "SELF.name CONTAINS[cd] '\(searchTerm)'", argumentArray: nil)

dataArray.filteredArrayUsingPredicate(predicate)

这是字典的数组,不是数组的数组。我想要一个来自数组数组的联系人