Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека Разработчика iOS

Разработчик

Ссылка платформы основы ссылка на протокол NSKeyValueCoding

Опции
Развертывание Target:

На этой странице
Язык:

NSKeyValueCoding

Наследование


Не применимый

Соответствует


Не применимый

Оператор импорта


Swift

import Foundation

Objective C

@import Foundation;

Доступность


Доступный в iOS 2.0 и позже.

NSKeyValueCoding неофициальный протокол определяет механизм, которым можно получить доступ к свойствам объекта косвенно по имени (или ключ), а не непосредственно через вызов метода доступа или как переменные экземпляра. Таким образом ко всем свойствам объекта можно получить доступ непротиворечивым способом.

Основные методы для доступа к значениям объекта setValue:forKey:, который устанавливает значение для свойства, идентифицированного указанным ключом, и valueForKey:, который возвращает значение для свойства, идентифицированного указанным ключом. Реализация по умолчанию использует методы доступа, обычно реализованные объектами (или к переменным экземпляра доступа непосредственно в случае необходимости).

  • Возвращает значение для свойства, идентифицированного данным ключом.

    Объявление

    Swift

    func valueForKey(_ key: String) -> AnyObject?

    Objective C

    - (id)valueForKey:(NSString *)key

    Параметры

    key

    Имя одного из свойств получателя.

    Возвращаемое значение

    Значение для свойства, идентифицированного key.

    Обсуждение

    Поисковый образец это valueForKey: использование, чтобы найти, что правильное значение возвращается, описано в Подробных данных Реализации Поиска Средства доступа в Значении ключа, Кодирующем Руководство по программированию.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

    См. также

    – valueForKeyPath:

  • Возвращает значение для полученного свойства, идентифицированного данным ключевым путем.

    Объявление

    Swift

    func valueForKeyPath(_ keyPath: String) -> AnyObject?

    Objective C

    - (id)valueForKeyPath:(NSString *)keyPath

    Параметры

    keyPath

    Ключевой путь формы relationship.property (с одним или более отношениями); например, «department.name» или «department.manager.lastName».

    Возвращаемое значение

    Значение для полученного свойства, идентифицированного keyPath.

    Обсуждение

    Реализация по умолчанию получает целевой объект для каждого использования отношения valueForKey: и возвращает результат a valueForKey: обменивайтесь сообщениями к конечному объекту.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

    См. также

    – setValue:forKeyPath:

  • Возвращает словарь, содержащий значения свойств, идентифицированные каждым из ключей в данном массиве.

    Объявление

    Swift

    func dictionaryWithValuesForKeys(_ keys: [AnyObject]) -> [NSObject : AnyObject]

    Objective C

    - (NSDictionary *)dictionaryWithValuesForKeys:(NSArray *)keys

    Параметры

    keys

    Массив, содержащий NSString объекты, идентифицирующие свойства получателя.

    Возвращаемое значение

    Словарь, содержащий, как включает имена свойства в keys, с соответствующими значениями, являющимися соответствующими значениями свойств.

    Обсуждение

    Реализация по умолчанию вызывает valueForKey: для каждого ключа keys и замены NSNull значения в словаре для возвращенного nil значения.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Вызванный valueForKey: когда это не находит свойства, соответствующего данному ключу.

    Объявление

    Swift

    func valueForUndefinedKey(_ key: String) -> AnyObject?

    Objective C

    - (id)valueForUndefinedKey:(NSString *)key

    Параметры

    key

    Строка, которая не равна имени ни одного из свойств получателя.

    Обсуждение

    Подклассы могут переопределить этот метод для возврата альтернативного значения для неопределенных ключей. Реализация по умолчанию повышает NSUndefinedKeyException.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Возвращает непостоянный прокси массива, обеспечивающий доступ для чтения-записи к упорядоченному - многие отношение, указанное данным ключом.

    Объявление

    Swift

    func mutableArrayValueForKey(_ key: String) -> NSMutableArray

    Objective C

    - (NSMutableArray *)mutableArrayValueForKey:(NSString *)key

    Параметры

    key

    Имя упорядоченного - многие отношение.

    Возвращаемое значение

    Непостоянный прокси массива, обеспечивающий доступ для чтения-записи к упорядоченному - многие отношение, указанное key.

    Обсуждение

    Объекты, добавленные к непостоянному массиву, становятся связанными с получателем, и объекты, удаленные из непостоянного массива, становятся не связанными. Реализация по умолчанию распознает те же простые методы доступа и методы доступа массива как valueForKey:, и следует за теми же прямыми политиками доступа переменной экземпляра, но всегда возвращает непостоянный объект прокси набора вместо неизменного набора это valueForKey: возвратился бы.

    Поисковый образец это mutableArrayValueForKey: использование описано в Подробных данных Реализации Поиска Средства доступа в Значении ключа, Кодирующем Руководство по программированию.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Возвращает непостоянный массив, обеспечивающий доступ для чтения-записи к упорядоченному - многие отношение, указанное данным ключевым путем.

    Объявление

    Swift

    func mutableArrayValueForKeyPath(_ keyPath: String) -> NSMutableArray

    Objective C

    - (NSMutableArray *)mutableArrayValueForKeyPath:(NSString *)keyPath

    Параметры

    keyPath

    Ключевой путь, относительно получателя, к упорядоченному - многие отношение.

    Возвращаемое значение

    Непостоянный массив, обеспечивающий доступ для чтения-записи к упорядоченному - многие отношение, указанное keyPath.

    Обсуждение

    Посмотрите mutableArrayValueForKey: для дополнительных подробных данных.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Возвращает непостоянный прокси набора, обеспечивающий доступ для чтения-записи к неупорядоченному к - многие отношение, указанное данным ключом.

    Объявление

    Swift

    func mutableSetValueForKey(_ key: String) -> NSMutableSet

    Objective C

    - (NSMutableSet *)mutableSetValueForKey:(NSString *)key

    Параметры

    key

    Имя неупорядоченного к - многие отношение.

    Возвращаемое значение

    Непостоянный набор, обеспечивающий доступ для чтения-записи к неупорядоченному к - многие отношение, указанное key.

    Обсуждение

    Объекты, добавленные к непостоянному прокси набора, становятся связанными с получателем, и объекты, удаленные из непостоянного набора, становятся не связанными. Реализация по умолчанию распознает те же простые методы доступа и методы доступа набора как valueForKey:, и следует за теми же прямыми политиками доступа переменной экземпляра, но всегда возвращает непостоянный объект прокси набора вместо неизменного набора это valueForKey: возвратился бы.

    Поисковый образец это mutableSetValueForKey: использование описано в Подробных данных Реализации Поиска Средства доступа в Значении ключа, Кодирующем Руководство по программированию.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Возвращает непостоянный набор, обеспечивающий доступ для чтения-записи к неупорядоченному к - многие отношение, указанное данным ключевым путем.

    Объявление

    Swift

    func mutableSetValueForKeyPath(_ keyPath: String) -> NSMutableSet

    Objective C

    - (NSMutableSet *)mutableSetValueForKeyPath:(NSString *)keyPath

    Параметры

    keyPath

    Ключевой путь, относительно получателя, к неупорядоченному к - многие отношение.

    Возвращаемое значение

    Непостоянный набор, обеспечивающий доступ для чтения-записи к неупорядоченному к - многие отношение, указанное keyPath.

    Обсуждение

    Посмотрите mutableSetValueForKey: для дополнительных подробных данных.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Возвращает непостоянный упорядоченный набор, обеспечивающий доступ для чтения-записи к uniquing, упорядоченному - многие отношение, указанное данным ключом.

    Объявление

    Swift

    func mutableOrderedSetValueForKey(_ key: String) -> NSMutableOrderedSet

    Objective C

    - (NSMutableOrderedSet *)mutableOrderedSetValueForKey:(NSString *)key

    Параметры

    key

    Имя uniquing, упорядоченного - многие отношение.

    Возвращаемое значение

    Непостоянный упорядоченный набор, обеспечивающий доступ для чтения-записи к uniquing к - многие отношение, указанное key.

    Обсуждение

    Объекты, добавленные к непостоянному прокси набора, становятся связанными с получателем, и объекты, удаленные из непостоянного набора, становятся не связанными. Реализация по умолчанию распознает те же простые методы доступа и методы доступа набора как valueForKey:, и следует за теми же прямыми политиками доступа переменной экземпляра, но всегда возвращает непостоянный объект прокси набора вместо неизменного набора это valueForKey: возвратился бы.

    Поисковый образец это mutableOrderedSetValueForKey: использование описано в Подробных данных Реализации Поиска Средства доступа в Значении ключа, Кодирующем Руководство по программированию.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 5.0 и позже.

  • Возвращает непостоянный упорядоченный набор, обеспечивающий доступ для чтения-записи к uniquing, упорядоченному - многие отношение, указанное данным ключевым путем.

    Объявление

    Swift

    func mutableOrderedSetValueForKeyPath(_ keyPath: String) -> NSMutableOrderedSet

    Objective C

    - (NSMutableOrderedSet *)mutableOrderedSetValueForKeyPath:(NSString *)keyPath

    Параметры

    keyPath

    Ключевой путь, относительно получателя, к uniquing, упорядоченному - многие отношение, представлен набором.

    Возвращаемое значение

    Непостоянный упорядоченный набор, обеспечивающий доступ для чтения-записи к uniquing к - многие отношение, указанное keyPath.

    Обсуждение

    Посмотрите mutableOrderedSetValueForKey: для дополнительных подробных данных.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 5.0 и позже.

  • Устанавливает значение для свойства, идентифицированного данным ключевым путем к данному значению.

    Объявление

    Swift

    func setValue(_ value: AnyObject?, forKeyPath keyPath: String)

    Objective C

    - (void)setValue:(id)value forKeyPath:(NSString *)keyPath

    Параметры

    value

    Значение для свойства, идентифицированного keyPath.

    keyPath

    Ключевой путь формы relationship.property (с одним или более отношениями): например, «department.name» или «department.manager.lastName».

    Обсуждение

    Реализация по умолчанию этого метода получает целевой объект для каждого использования отношения valueForKey:, и отправляет конечный объект a setValue:forKey: сообщение.

    Специальные замечания

    При использовании этого метода и целевого объекта не реализует средство доступа для значения, поведение по умолчанию для того объекта сохранить value вместо того, чтобы копировать или присваиваться value.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

    См. также

    – valueForKeyPath:

  • Свойства наборов получателя со значениями из данного словаря, с помощью его ключей для идентификации свойств.

    Объявление

    Swift

    func setValuesForKeysWithDictionary(_ keyedValues: [NSObject : AnyObject])

    Objective C

    - (void)setValuesForKeysWithDictionary:(NSDictionary *)keyedValues

    Параметры

    keyedValues

    Словарь, ключи которого идентифицируют свойства в получателе. Значения свойств в получателе установлены в соответствующие значения в словаре.

    Обсуждение

    Реализация по умолчанию вызывает setValue:forKey: для каждой пары ключ/значение, занимая место nil для NSNull значения в keyedValues.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Вызванный setValue:forKey: когда это дало a nil значение для скалярного значения (такой как int или float).

    Объявление

    Swift

    func setNilValueForKey(_ key: String)

    Objective C

    - (void)setNilValueForKey:(NSString *)key

    Параметры

    key

    Имя одного из свойств получателя.

    Обсуждение

    Подклассы могут переопределить этот метод для обрабатывания запроса некоторым другим способом, такой как путем замены 0 или сигнальная метка оценивает за nil и вызов setValue:forKey: снова или установка переменной непосредственно. Реализация по умолчанию повышает NSInvalidArgumentException.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Устанавливает свойство получателя, указанного данным ключом к данному значению.

    Объявление

    Swift

    func setValue(_ value: AnyObject?, forKey key: String)

    Objective C

    - (void)setValue:(id)value forKey:(NSString *)key

    Параметры

    value

    Значение для свойства, идентифицированного key.

    key

    Имя одного из свойств получателя.

    Обсуждение

    Если key идентифицирует для - одно отношение, свяжите объект, указанный value к получателю, не связывая ранее связанный объект, если был тот. Учитывая объект коллекции и a key это идентифицирует для - многие отношение, свяжите объекты, содержавшиеся в наборе к получателю, не связав ранее связанные объекты, если был кто-либо.

    Поисковый образец это setValue:forKey: использование описано в Подробных данных Реализации Поиска Средства доступа в Значении ключа, Кодирующем Руководство по программированию.

    В считаемой на ссылку среде, если к переменной экземпляра получают доступ непосредственно, value сохраняется.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Вызванный setValue:forKey: когда это не находит свойства для данного ключа.

    Объявление

    Swift

    func setValue(_ value: AnyObject?, forUndefinedKey key: String)

    Objective C

    - (void)setValue:(id)value forUndefinedKey:(NSString *)key

    Параметры

    value

    Значение для ключа, идентифицированного key.

    key

    Строка, которая не равна имени ни одного из свойств получателя.

    Обсуждение

    Подклассы могут переопределить этот метод для обрабатывания запроса некоторым другим способом. Реализация по умолчанию повышает NSUndefinedKeyException.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

    См. также

    – valueForUndefinedKey:

  • Возвращает булево значение, указывающее, должны ли методы кодирования значения ключа получить доступ к соответствующей переменной экземпляра непосредственно при нахождении никакого метода доступа для свойства.

    Объявление

    Swift

    class func accessInstanceVariablesDirectly() -> Bool

    Objective C

    + (BOOL)accessInstanceVariablesDirectly

    Возвращаемое значение

    YEStrue если методы кодирования значения ключа должны получить доступ к соответствующей переменной экземпляра непосредственно при нахождении никакого метода доступа для свойства, иначе NOfalse.

    Обсуждение

    Возвраты по умолчанию YEStrue. Подклассы могут переопределить его для возврата NOfalse, когда методы кодирования значения ключа не получат доступ к переменным экземпляра.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Возвращает булево значение, указывающее, допустимо ли значение, указанное данной подсказкой, для свойства, идентифицированного данным ключом.

    Объявление

    Swift

    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey key: String, error outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)validateValue:(inout id *)ioValue forKey:(NSString *)key error:(out NSError **)outError

    Параметры

    ioValue

    Указатель на новое значение для свойства, идентифицированного key. Этот метод может изменить или заменить значение для создания его допустимым.

    key

    Имя одного из свойств получателя. Ключ должен указать атрибут или к - одно отношение.

    outError

    Если проверка необходима и ioValue не преобразовывается в допустимое значение, по возврату содержит NSError объект, описывающий причину это ioValue не допустимое значение.

    Возвращаемое значение

    YES, если *ioValue допустимое значение для свойства, идентифицированного key, или если метод в состоянии изменить значение к *ioValue сделать его допустимым; иначе NOfalse.

    Обсуждение

    Реализация по умолчанию этого метода ищет класс получателя для метода проверки, имя которого соответствует образец validate<Ключ>:error:. Если такой метод найден, он вызывается, и результат возвращается. Если никакой такой метод не найден, YEStrue возвращается.

    Отправителю сообщения никогда не дают ответственность за выпуск ioValue или outError.

    Посмотрите Проверку Значения ключа для получения дополнительной информации.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

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

    Объявление

    Swift

    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath key: String, error outError: NSErrorPointer) -> Bool

    Objective C

    - (BOOL)validateValue:(inout id *)ioValue forKeyPath:(NSString *)key error:(out NSError **)outError

    Параметры

    ioValue

    Указатель на новое значение для свойства, идентифицированного keyPath. Этот метод может изменить или заменить значение для создания его допустимым.

    key

    Имя одного из свойств получателя. Ключевой путь должен указать атрибут или к - одно отношение. Ключевой путь имеет форму relationship.property (с одним или более отношениями); например, «department.name» или «department.manager.lastName».

    outError

    Если проверка необходима и ioValue не преобразовывается в допустимое значение, по возврату содержит NSError объект, описывающий причину это ioValue не допустимое значение.

    Обсуждение

    Реализация по умолчанию получает целевой объект для каждого использования отношения valueForKey: и возвращает результат a validateValue:forKey:error: обменивайтесь сообщениями к конечному объекту.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в iOS 2.0 и позже.

  • Когда работа кодирования значения ключа перестала работать, эта константа определяет имя исключения, повышенного.

    Объявление

    Swift

    let NSUndefinedKeyException: String

    Objective C

    extern NSString *NSUndefinedKeyException;

    Константы

    • NSUndefinedKeyException

      Повышенный, когда работа кодирования значения ключа перестала работать. userInfo ключи описаны в ключах NSUndefinedKeyException userInfo

      Доступный в iOS 2.0 и позже.

  • Эти константы являются ключами в NSUndefinedKeyException userInfo словарь

    Объявление

    Objective C

    extern NSString *NSTargetObjectUserInfoKey; extern NSString *NSUnknownUserInfoKey;

    Константы

    • NSTargetObjectUserInfoKey

      Объект, на котором перестала работать работа кодирования значения ключа.

    • NSUnknownUserInfoKey

      Ключ, для которого перестала работать работа кодирования значения ключа.

    Обсуждение

    Поскольку дополнительная информация видит, что Значение ключа Кодирует Имена Исключения.

  • Эти константы определяют доступных операторов массива. Посмотрите Операторов Набора и Массива для получения дополнительной информации.

    Объявление

    Swift

    let NSAverageKeyValueOperator: String let NSCountKeyValueOperator: String let NSDistinctUnionOfArraysKeyValueOperator: String let NSDistinctUnionOfObjectsKeyValueOperator: String let NSDistinctUnionOfSetsKeyValueOperator: String let NSMaximumKeyValueOperator: String let NSMinimumKeyValueOperator: String let NSSumKeyValueOperator: String let NSUnionOfArraysKeyValueOperator: String let NSUnionOfObjectsKeyValueOperator: String let NSUnionOfSetsKeyValueOperator: String

    Objective C

    NSString *const NSAverageKeyValueOperator; NSString *const NSCountKeyValueOperator; NSString *const NSDistinctUnionOfArraysKeyValueOperator; NSString *const NSDistinctUnionOfObjectsKeyValueOperator; NSString *const NSDistinctUnionOfSetsKeyValueOperator; NSString *const NSMaximumKeyValueOperator; NSString *const NSMinimumKeyValueOperator; NSString *const NSSumKeyValueOperator; NSString *const NSUnionOfArraysKeyValueOperator; NSString *const NSUnionOfObjectsKeyValueOperator; NSString *const NSUnionOfSetsKeyValueOperator;

    Константы

    • NSAverageKeyValueOperator

      @avg оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSCountKeyValueOperator

      @count оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSDistinctUnionOfArraysKeyValueOperator

      @distinctUnionOfArrays оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSDistinctUnionOfObjectsKeyValueOperator

      @distinctUnionOfObjects оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSDistinctUnionOfSetsKeyValueOperator

      @distinctUnionOfSets оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSMaximumKeyValueOperator

      @max оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSMinimumKeyValueOperator

      @min оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSSumKeyValueOperator

      @sum оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSUnionOfArraysKeyValueOperator

      @unionOfArrays оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSUnionOfObjectsKeyValueOperator

      @unionOfObjects оператор массива.

      Доступный в iOS 2.0 и позже.

    • NSUnionOfSetsKeyValueOperator

      @unionOfSets оператор массива.

      Доступный в iOS 2.0 и позже.