NSTokenFieldを使用してデータ入力を許可すると、ユーザーが入力を開始するとTokenFieldが提案します。すでにコアデータの中にあるものを提案したい。これはNSManagedObjectsの配列を返す私はスーパーの場合、細胞移動(これは、すべてのカスタムテーブルビューのセル内に起こっている)と呼ばれているこの機能を持ってこれを行うにはコアデータ - valueForKey -OSXを使用してNSManagedObject配列を文字列の配列に変更します。
var subjectInformation = [NSManagedObject]()
let appDel = NSApplication.sharedApplication().delegate as! AppDelegate
let context = appDel.managedObjectContext
let fetchRequest = NSFetchRequest(entityName: "SubjectInformation")
do {
let results = try context.executeFetchRequest(fetchRequest)
subjectInformation = results as! [NSManagedObject]
} catch {
}
、今私はすべてのためにしたいです管理対象オブジェクト内のオブジェクトは、私はこのトークンフィールド機能私はこれを行うだろうか
func tokenField(tokenField: NSTokenField, completionsForSubstring substring: String, indexOfToken tokenIndex: Int, indexOfSelectedItem selectedIndex: UnsafeMutablePointer<Int>) -> [AnyObject]? {
return subjectInformation //this is where is should return an array eg; ["English","Maths","Science"]
の内側にそれを返すことができるように、文字列の配列に挿入してvalueForKey(「サブジェクト名」)をゲット?感謝:)
のthatsにあなたの結果の配列をキャストします – Eli