NSTokenField Предложить, но не завершить - PullRequest
5 голосов
/ 24 февраля 2011

Я чувствую, что это должно быть общая проблема, которую я просто пытаюсь выяснить, но я не мог найти кого-то еще, кто задавал вопрос так ... В основном у меня есть NSTokenField, и когда пользователь начинает печатать, я делаю SOAP-запрос и получаю имена, которые похожи на то, что они ввели. Проблема в том, что мои предложения не обязательно совпадают с набранными. Например, я сопоставляю электронную почту и фамилии, но полное имя человека появляется в массиве предложений. Поскольку буквы не совпадают, NSTokenField изменяет то, что уже было набрано, на первый элемент в массиве. Есть ли способ отключить автозаполнение и просто появится окно с предложением?

Ответы [ 2 ]

8 голосов
/ 22 марта 2011
    - (NSArray *)tokenField:(NSTokenField *)tokenField completionsForSubstring:(NSString *)substring indexOfToken:(NSInteger)tokenIndex indexOfSelectedItem:(NSInteger *)selectedIndex
{
    *selectedIndex = -1;
    return NSArray;
}

Оказывается, я неправильно назначил selectedIndex, но если вы просто установите его на -1, тогда ничего не будет выбрано.

0 голосов
/ 07 апреля 2016

В быстром ответ:

if selectedIndex != nil {
    selectedIndex.memory = -1
}
...