Получение токенов из NSTokenField

Я могу получить значение NSTokenField, выполнив [NSTokenField stringValue], но это не возвращает токены индивидуально. То, что я пытаюсь получить, - это маркерные поля в массиве i.e ['token', 'token2'].

Я немного неосведомлен, когда дело доходит до Cocoa/Objective-c, поэтому я не удивлюсь, если я упустил что-то очевидное.

NSTokenField не отвечает на count, поэтому я не уверен, возможно ли вернуть токены.

Спасибо.

Ответ 1

Из документация Apple:

Чтобы получить объекты, представленные токенами в поле токена, отправьте поле токена в сообщение objectValue. Хотя этот метод объявлен NSControl, NSTokenField реализует его, чтобы возвращать массив представляемых объектов. Если поле токена просто содержит ряд строк, objectValue возвращает массив строк. Чтобы установить представляемые объекты поля токена, используйте метод setObjectValue:, передавая в массив представляемых объектов. Если эти объекты arent строки, NSTokenField затем запрашивает его делегат для строк отображения, используемых для каждого токена.