2016-11-11 4 views
1

У меня есть объект coredata, связанный с таблицейView с 5 столбцами. Я использую контроллер массива для управления сортировкой таблицы и т. Д.SWIFT 3 OSX Cocoa Array Controller и привязка CoreData «Поиск по нескольким столбцам»

Моя проблема заключается в поиске с использованием привязок. У меня есть searchField, связанный с ArrayController, и формат предиката устанавливается в первый столбец данных. Все работает нормально. Я также могу изменить формат предиката в XCODE и выполнить поиск в другом столбце.

Проблема, которую я имею зная, как изменить формат предиката в моем коде, чтобы позволить пользователю искать на колонке по своему выбору ...

Я попытался модифицировать ArrayController следующим образом:

let predicate = NSPredicate(format: "projectNumber contains[cd] %@", searchBar.stringValue) 
    searchArrayController.filterPredicate = predicate 

и

let predicate = NSPredicate(format: "customerName contains[cd] %@", searchBar.stringValue) 
    searchArrayController.filterPredicate = predicate 

projectNumber и CUSTOMERNAME являются атрибутами моей сущности.

Когда я устанавливаю предикат таким образом, данные таблицы исчезают. Я могу заставить его показать снова с помощью поиска в поле поиска, но он игнорирует мои настройки предиката и только подчиняется оригиналу, установленному в раскадровке XCODE.

установка раскадровка: Predicate Формат = projectNumber содержит [CD] значение $

спасибо заранее за любую помощь вы можете предоставить ...

+0

Забыл упомянуть, что параметры предиката находятся в инспекторе привязок объекта поиска, где я привязываю его к ArrayController. –

ответ

0

Добавить предикат привязки для каждого столбца. Когда вы связываете predicate в поле поиска, появляется привязка predicate2. Кодирование не требуется.

+0

Для всех, кто сталкивается с этим, ищет, как выбирать столбцы для поиска во время выполнения. Apple предоставила всплывающее меню поиска с использованием NSMenu и возможность установить предикат для каждого столбца, который установлен на панели привязок Xcode ... может быть, не самый лучший способ представить варианты поиска столбцов, на мой взгляд, я хотел бы, чтобы немного большей гибкости в презентации, но это, по крайней мере, очень легко реализовать .... –

 Смежные вопросы

  • Нет связанных вопросов^_^