2011-12-18 1 views
0

Согласно документации Apple,Что делает AlwaysUsesMultipleValuesMarker в NSTreeController?


setAlwaysUsesMultipleValuesMarker: 

Устанавливает ли всегда возвращает несколько значений маркеров приемника при выборе несколько объектов, даже если они имеют одинаковое значение.

- (void)setAlwaysUsesMultipleValuesMarker:(BOOL)flag 

Обсуждение:

Установка флага в YES может повысить производительность, если приложение не позволяет редактировать несколько значений. По умолчанию используется значение НЕТ.


Однако, я не понимаю, что это значит даже после прочтения документации. Может ли кто-нибудь предложить более простые объяснения с примерами?

ответ

0

Обнаружил ответ на этот вопрос глубоко внутри документов яблока на Cocoa Binding Guide.


  • NSMultipleValuesMarker

The NSMultipleValuesMarker указывает на то, что более чем один объект выбран в контроллере и значения для запрашиваемого ключа не являются одинаковыми.

По умолчанию контроллеры возвращают NSMultipleValuesMarker только тогда, когда значения для запрошенного ключа различаются. Например, если значение для selection.name возвращает массив, содержащий три строки: «Тони», «Тони», «Тони», вместо строки NSMultipleValuesMarker возвращается строка «Тони».

Контроллер сбора может быть сконфигурирован-либо программно с использованием метода setAlwaysUsesMultipleValuesMarker: или путем проверки всегда использует несколько значений маркеров флажок в Interface Builder-таким образом, что она всегда возвращает NSMultipleValuesMarker, когда выбраны несколько элементов, даже если значения равны.