NSUniqueIDSpecifier
Указывает объект в наборе (или контейнер) уникальным идентификатором. Этот спецификатор работает только на объекты, имеющие свойство ID. Объект уникального идентификатора передал экземпляру NSUniqueIDSpecifier должен быть любой NSNumber возразите или NSString объект. Точный тип должен соответствовать объявление словаря сценариев атрибута ID для соответствующего класса сценариев.
Можно ожидать, что свойство ID будет только для чтения для любого объекта, поддерживающего его. Поэтому сценарист может получить уникальный идентификатор для объекта и обратиться к объекту ID, но не может установить уникальный идентификатор.
Вы обычно не разделяете на подклассы NSUniqueIDSpecifier.
Оценка NSUniqueIDSpecifier объекты выполняют эти шаги, пока не найден указанный объект:
Если контейнер реализует метод, селектор которого соответствует соответствующее
valueIn<Key>WithUniqueID:образец установил путем сценариев кодирования значения ключа, метод вызывается. Этот метод может потенциально быть очень быстрым, и может быть относительно просто реализовать.Как имеет место при оценке любого спецификатора объекта сценария, контейнеру указанного объекта дают шанс оценить объектный спецификатор. Если контейнерный класс реализует
indicesOfObjectsByEvaluatingObjectSpecifier:метод, метод вызывается. Этот метод может потенциально быть очень быстрым, но относительно трудно реализовать.NSWhoseSpecifierобъект, указывающий первый объект чей релевантный'ID 'припишите соответствует, ID синтезирован и оценен.NSWhoseSpecifierобъект должен перерыть все включенные элементы в контейнере, ища соответствие. Поиск является потенциально очень медленным.
Наследование
-
NSObject -
NSScriptObjectSpecifier -
NSUniqueIDSpecifier
-
NSObject -
NSScriptObjectSpecifier -
NSUniqueIDSpecifier
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSObjectProtocol -
Печатаемый -
NSCoding -
NSObject
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.2 и позже.
-
init (containerClassDescription:containerSpecifier:key:uniqueID:) - initWithContainerClassDescription:containerSpecifier:key:uniqueID:Определяемый инициализаторВозвраты
NSUniqueIDSpecifierобъект, инициализированный с данными параметрами.Объявление
Swift
init(containerClassDescriptionclassDesc: NSScriptClassDescription, containerSpecifiercontainer: NSScriptObjectSpecifier, keyproperty: String, uniqueIDuniqueID: AnyObject)Objective C
- (instancetype)initWithContainerClassDescription:(NSScriptClassDescription *)classDesccontainerSpecifier:(NSScriptObjectSpecifier *)containerkey:(NSString *)propertyuniqueID:(id)uniqueIDПараметры
classDescОписание класса для нового объекта.
containerКонтейнер для нового объекта.
propertyСвойство для нового объекта.
uniqueIDУникальный идентификатор для нового объекта.
uniqueIDдолжен быть экземплярNSNumberилиNSString. Тип должен соответствовать заявленный тип атрибута указанного scriptable класса, четыре кода символа которого'ID '.Возвращаемое значение
NSUniqueIDSpecifierобъект, инициализированный с данными параметрами.Обсуждение
Вызывает суперкласс
initWithContainerClassDescription:containerSpecifier:key:метод и наборы ID кuniqueID.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.2 и позже.
-
Устанавливает ID, инкапсулировавший получателем.
Объявление
Swift
@NSCopying var uniqueID: AnyObjectObjective C
@property(copy) id uniqueIDПараметры
uniqueIDID для получателя.
uniqueIDдолжен быть экземплярNSNumberилиNSString. Тип должен соответствовать заявленный тип атрибута указанного scriptable класса, четыре кода символа которого'ID '.Обсуждение
Несмотря на то, что
NSUniqueIDSpecifierподдержки, устанавливающие уникальный идентификатор, ID для указанного объекта, вероятно, останется статичным по жизни объекта.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.2 и позже.
См. также
-
Возвращает ID, инкапсулировавший получателем.
Объявление
Swift
@NSCopying var uniqueID: AnyObjectObjective C
@property(copy) id uniqueIDВозвращаемое значение
ID инкапсулируется получателем.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.2 и позже.
См. также
