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

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

Разработчик

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

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

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

NSCoder

NSCoder абстрактный класс объявляет, что интерфейс, используемый конкретными подклассами, передает объекты и другие значения между памятью и некоторым другим форматом. Эта возможность обеспечивает основание для архивации (где объекты и элементы данных сохранены на диске), и распределение (где объекты и элементы данных копируются между различными процессами или потоками). Конкретные подклассы, предоставленные Основой в этих целях, NSArchiver, NSUnarchiver, NSKeyedArchiver, NSKeyedUnarchiver, и NSPortCoder. Конкретные подклассы NSCoder именуются в целом как классы кодера и экземпляры этих классов, поскольку кодер возражает (или просто кодеры). Объект кодера, который может только закодировать значения, упоминается как объект кодера и тот, который может только декодировать значения как объект декодера.

NSCoder воздействует на объекты, скаляры, C массивы, структуры и строки, и на указателях на эти типы. Это не обрабатывает типы, реализация которых варьируется через платформы, такие как объединение, недействительное *, указатели функции и длинные цепочки указателей. Информация о типе объекта объектно-ориентированных памятей кодера вместе с данными, таким образом, объект, декодируемый от потока байтов обычно, имеет тот же класс как объект, первоначально закодированный в поток. Объект может изменить свой класс, когда закодировано, однако; это описано в Руководстве по программированию Архивов и Сериализации.

Платформа Основы AV добавляет методы к NSCoder класс, чтобы упростить создавать архивы включая Базовые временные структуры Носителей и временную структуру Носителей Ядра выдержки от архивов.

Разделение на подклассы примечаний

Для получения дополнительной информации того, как создать подкласс NSCoder, посмотрите Разделение на подклассы NSCoder в Руководстве по программированию Архивов и Сериализации.

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


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


Swift

import Foundation

Objective C

@import Foundation;

Доступность


Доступный в OS X v10.0 и позже.
  • Булево значение, указывающее, включили ли поддержки получателя кодирование объектов. (только для чтения)

    Объявление

    Swift

    var allowsKeyedCoding: Bool { get }

    Objective C

    @property(readonly) BOOL allowsKeyedCoding

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

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

    Объявление

    Swift

    func containsValueForKey(_ key: String) -> Bool

    Objective C

    - (BOOL)containsValueForKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

    Строка передается как key.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Кодирует массив count элементы, типом Objective C которых дают itemType.

    Объявление

    Swift

    func encodeArrayOfObjCType(_ type: UnsafePointer<Int8>, count count: Int, at array: UnsafePointer<Void>)

    Objective C

    - (void)encodeArrayOfObjCType:(const char *)type count:(NSUInteger)count at:(const void *)array

    Обсуждение

    Значения кодируются с буферного начала в address. itemType должен содержать точно один код типа. NSCoderреализация вызывает encodeValueOfObjCType:at: закодировать целый массив элементов. Подклассы, реализующие encodeValueOfObjCType:at: метод не должен переопределять этот метод.

    Этот метод должен быть соответствующим последующим decodeArrayOfObjCType:count:at: сообщение.

    Для получения информации о создании Objective C вводят код, подходящий для itemType, посмотрите Кодировки Типа.

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

    Вы не должны использовать этот метод для кодирования массивов C объектов Objective C. Посмотрите decodeArrayOfObjCType:count:at: для большего количества подробных данных.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует boolv и партнеры это со строкой key.

    Объявление

    Swift

    func encodeBool(_ boolv: Bool, forKey key: String)

    Objective C

    - (void)encodeBool:(BOOL)boolv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    См. также

    – decodeBoolForKey:

  • Может быть переопределен подклассами для кодирования object так, чтобы копия, а не прокси, была создана после декодирования.

    Объявление

    Swift

    func encodeBycopyObject(_ anObject: AnyObject?)

    Objective C

    - (void)encodeBycopyObject:(id)anObject

    Обсуждение

    NSCoderреализация просто вызывает encodeObject:.

    Этот метод должен быть соответствующим соответствием decodeObject сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Может быть переопределен подклассами для кодирования object так, чтобы прокси, а не копия, был создан после декодирования.

    Объявление

    Swift

    func encodeByrefObject(_ anObject: AnyObject?)

    Objective C

    - (void)encodeByrefObject:(id)anObject

    Обсуждение

    NSCoderреализация просто вызывает encodeObject:.

    Этот метод должен быть соответствующим соответствием decodeObject сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    – encodeBycopyObject:

  • Кодирует буфер данных, типы которых являются неуказанными.

    Объявление

    Swift

    func encodeBytes(_ byteaddr: UnsafePointer<Void>, length length: Int)

    Objective C

    - (void)encodeBytes:(const void *)byteaddr length:(NSUInteger)length

    Обсуждение

    Буфер, который будет закодирован, начинается в address, и его длиной в байтах дают numBytes.

    Этот метод должен быть соответствующим соответствием decodeBytesWithReturnedLength: сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует буфер данных, bytesp, чья длина указана lenv, и партнеры это со строкой key.

    Объявление

    Swift

    func encodeBytes(_ bytesp: UnsafePointer<UInt8>, length lenv: Int, forKey key: String)

    Objective C

    - (void)encodeBytes:(const uint8_t *)bytesp length:(NSUInteger)lenv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Может быть переопределен подклассами для условного кодирования object, сохранение общих ссылок к тому объекту.

    Объявление

    Swift

    func encodeConditionalObject(_ object: AnyObject?)

    Objective C

    - (void)encodeConditionalObject:(id)object

    Обсуждение

    В методе переопределения, object должен быть закодирован, только если это безусловно кодируется в другом месте (с любым другим encode...Object: метод).

    Этот метод должен быть соответствующим последующим decodeObject сообщение. После декодирования, если object никогда не кодировался безусловно, decodeObject возвраты nil вместо object. Однако, если object был закодирован безусловно, все ссылки на object должен быть разрешен.

    NSCoderреализация просто вызывает encodeObject:.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Условно кодирует ссылку на objv и партнеры это со строкой key только если objv был безусловно закодирован с encodeObject:forKey:.

    Объявление

    Swift

    func encodeConditionalObject(_ objv: AnyObject?, forKey key: String)

    Objective C

    - (void)encodeConditionalObject:(id)objv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они поддерживают включенное кодирование.

    Закодированный объект декодируется с decodeObjectForKey: метод. Если objv никогда не кодировался безусловно, decodeObjectForKey: возвраты nil вместо objv.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Кодирует данный NSData объект.

    Объявление

    Swift

    func encodeDataObject(_ data: NSData)

    Objective C

    - (void)encodeDataObject:(NSData *)data

    Обсуждение

    Подклассы должны переопределить этот метод.

    Этот метод должен быть соответствующим последующим decodeDataObject сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

    См. также

    – encodeObject:

  • Кодирует realv и партнеры это со строкой key.

    Объявление

    Swift

    func encodeDouble(_ realv: Double, forKey key: String)

    Objective C

    - (void)encodeDouble:(double)realv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Кодирует realv и партнеры это со строкой key.

    Объявление

    Swift

    func encodeFloat(_ realv: Float, forKey key: String)

    Objective C

    - (void)encodeFloat:(float)realv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Кодирует intv и партнеры это со строкой key.

    Объявление

    Swift

    func encodeInt(_ intv: Int32, forKey key: String)

    Objective C

    - (void)encodeInt:(int)intv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Кодирует данный NSInteger и партнеры это с данным ключом.

    Объявление

    Swift

    func encodeInteger(_ intv: Int, forKey key: String)

    Objective C

    - (void)encodeInteger:(NSInteger)intv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.5 и позже.

  • Кодирует 32-разрядное целое число intv и партнеры это со строкой key.

    Объявление

    Swift

    func encodeInt32(_ intv: Int32, forKey key: String)

    Objective C

    - (void)encodeInt32:(int32_t)intv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Кодирует 64-разрядное целое число intv и партнеры это со строкой key.

    Объявление

    Swift

    func encodeInt64(_ intv: Int64, forKey key: String)

    Objective C

    - (void)encodeInt64:(int64_t)intv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Кодирует объект старого стиля на кодер.

    Объявление

    Objective C

    - (void)encodeNXObject:(id)object

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

  • Кодирует object.

    Объявление

    Swift

    func encodeObject(_ object: AnyObject?)

    Objective C

    - (void)encodeObject:(id)object

    Обсуждение

    NSCoderреализация просто вызывает encodeValueOfObjCType:at: закодировать object. Подклассы могут переопределить этот метод для кодирования ссылки на object вместо object самостоятельно. Например, NSArchiver обнаруживает копию, возражает и кодирует ссылку на исходный объект, а не закодируйте тот же объект дважды.

    Этот метод должен быть соответствующим последующим decodeObject сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует объект objv и партнеры это со строкой key.

    Объявление

    Swift

    func encodeObject(_ objv: AnyObject?, forKey key: String)

    Objective C

    - (void)encodeObject:(id)objv forKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод для идентификации многократных кодировок objv и закодируйте ссылку на objv вместо этого. Например, NSKeyedArchiver обнаруживает копию, возражает и кодирует ссылку на исходный объект, а не закодируйте тот же объект дважды.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    См. также

    – decodeObjectForKey:

  • Кодирует point.

    Объявление

    Swift

    func encodePoint(_ point: NSPoint)

    Objective C

    - (void)encodePoint:(NSPoint)point

    Обсуждение

    NSCoderреализация вызывает encodeValueOfObjCType:at: закодировать point.

    Этот метод должен быть соответствующим последующим decodePoint сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует point и партнеры это со строкой key.

    Объявление

    Swift

    func encodePoint(_ point: NSPoint, forKey key: String)

    Objective C

    - (void)encodePoint:(NSPoint)point forKey:(NSString *)key

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    См. также

    – decodePointForKey:

  • Кодирует список свойств aPropertyList.

    Объявление

    Swift

    func encodePropertyList(_ aPropertyList: AnyObject)

    Objective C

    - (void)encodePropertyList:(id)aPropertyList

    Обсуждение

    NSCoderреализация вызывает encodeValueOfObjCType:at: закодировать aPropertyList.

    Этот метод должен быть соответствующим последующим decodePropertyList сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует rect.

    Объявление

    Swift

    func encodeRect(_ rect: NSRect)

    Objective C

    - (void)encodeRect:(NSRect)rect

    Обсуждение

    NSCoderреализация вызывает encodeValueOfObjCType:at: закодировать rect.

    Этот метод должен быть соответствующим последующим decodeRect сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует rect и партнеры это со строкой key.

    Объявление

    Swift

    func encodeRect(_ rect: NSRect, forKey key: String)

    Objective C

    - (void)encodeRect:(NSRect)rect forKey:(NSString *)key

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    См. также

    – decodeRectForKey:

  • Может быть переопределен подклассами для кодирования соединенной группы объектов Objective C, начиная с rootObject.

    Объявление

    Swift

    func encodeRootObject(_ rootObject: AnyObject)

    Objective C

    - (void)encodeRootObject:(id)rootObject

    Обсуждение

    NSCoderреализация просто вызывает encodeObject:.

    Этот метод должен быть соответствующим последующим decodeObject сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует size.

    Объявление

    Swift

    func encodeSize(_ size: NSSize)

    Objective C

    - (void)encodeSize:(NSSize)size

    Обсуждение

    NSCoderреализация вызывает encodeValueOfObjCType:at: закодировать size.

    Этот метод должен быть соответствующим последующим decodeSize сообщение.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует size и партнеры это со строкой key.

    Объявление

    Swift

    func encodeSize(_ size: NSSize, forKey key: String)

    Objective C

    - (void)encodeSize:(NSSize)size forKey:(NSString *)key

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    См. также

    – decodeSizeForKey:

  • Должен быть переопределен подклассами для кодирования единственного значения, находящегося в address, чьим типом Objective C дают valueType.

    Объявление

    Swift

    func encodeValueOfObjCType(_ type: UnsafePointer<Int8>, at addr: UnsafePointer<Void>)

    Objective C

    - (void)encodeValueOfObjCType:(const char *)type at:(const void *)addr

    Обсуждение

    valueType должен содержать точно один код типа.

    Этот метод должен быть соответствующим последующим decodeValueOfObjCType:at: сообщение.

    Для получения информации о создании Objective C вводят код, подходящий для valueType, посмотрите Кодировки Типа.

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

    Вы не должны использовать этот метод для кодирования объектов Objective C. Посмотрите decodeArrayOfObjCType:count:at: для большего количества подробных данных.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует серию значений потенциально отличающихся типов Objective C.

    Объявление

    Objective C

    - (void)encodeValuesOfObjCTypes:(const char *)types, ...

    Обсуждение

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

    Этот метод должен быть соответствующим последующим decodeValuesOfObjCTypes: сообщение.

    NSCoderреализация вызывает encodeValueOfObjCType:at: закодировать отдельные типы. Подклассы, реализующие encodeValueOfObjCType:at: метод не должен переопределять этот метод. Однако подклассы, обеспечивающие более эффективный подход для кодирования серии значений, могут переопределить этот метод для реализации того подхода.

    Для получения информации о создании Objective C вводят коды, подходящие для valueTypes, посмотрите Кодировки Типа.

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

    Вы не должны использовать этот метод для кодирования объектов Objective C. Посмотрите decodeArrayOfObjCType:count:at: для большего количества подробных данных.

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

    Objective C

    @import Foundation;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Кодирует данный CMTime структура и партнеры это с указанным ключом.

    Объявление

    Swift

    func encodeCMTime(_ time: CMTime, forKey key: String!)

    Objective C

    - (void)encodeCMTime:(CMTime)time forKey:(NSString *)key

    Параметры

    time

    A CMTime структура.

    key

    Ключ, с которым можно связаться time в архиве.

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

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.7 и позже.

  • Кодирует данный CMTimeRange структура и партнеры это с указанным ключом.

    Объявление

    Swift

    func encodeCMTimeRange(_ timeRange: CMTimeRange, forKey key: String!)

    Objective C

    - (void)encodeCMTimeRange:(CMTimeRange)timeRange forKey:(NSString *)key

    Параметры

    timeRange

    A CMTimeRange структура.

    key

    Ключ, с которым можно связаться timeRange в архиве.

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

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.7 и позже.

  • Кодирует данный CMTimeMapping структура и партнеры это с указанным ключом.

    Объявление

    Swift

    func encodeCMTimeMapping(_ timeMapping: CMTimeMapping, forKey key: String!)

    Objective C

    - (void)encodeCMTimeMapping:(CMTimeMapping)timeMapping forKey:(NSString *)key

    Параметры

    timeMapping

    A CMTimeMapping структура.

    key

    Ключ, с которым можно связаться timeMapping в архиве.

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

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.7 и позже.

  • Декодирует массив count элементы, типом Objective C которых дают itemType.

    Объявление

    Swift

    func decodeArrayOfObjCType(_ itemType: UnsafePointer<Int8>, count count: Int, at array: UnsafeMutablePointer<Void>)

    Objective C

    - (void)decodeArrayOfObjCType:(const char *)itemType count:(NSUInteger)count at:(void *)array

    Обсуждение

    Элементы декодируются в буферное начало в address, который должен быть достаточно большим для содержания их всех. itemType должен содержать точно один код типа. NSCoderреализация вызывает decodeValueOfObjCType:at: декодировать целый массив элементов.

    Этот метод соответствует encodeArrayOfObjCType:count:at: сообщение используется во время кодирования.

    Для получения информации о создании Objective C вводят код, подходящий для itemType, посмотрите Кодировки Типа.

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

    Вы не должны использовать этот метод для декодирования массивов C объектов Objective C. По историческим причинам возвращенные объекты будут иметь дополнительную ссылку владения, которая можно только оставить использование CFRelease.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует и возвращает булево значение, ранее закодированное с encodeBool:forKey: и связанный со строкой key.

    Объявление

    Swift

    func decodeBoolForKey(_ key: String) -> Bool

    Objective C

    - (BOOL)decodeBoolForKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует буфер данных, ранее закодированных с encodeBytes:length:forKey: и связанный со строкой key.

    Объявление

    Swift

    func decodeBytesForKey(_ key: String, returnedLength lengthp: UnsafeMutablePointer<Int>) -> UnsafePointer<UInt8>

    Objective C

    - (const uint8_t *)decodeBytesForKey:(NSString *)key returnedLength:(NSUInteger *)lengthp

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует буфер данных, типы которых являются неуказанными.

    Объявление

    Swift

    func decodeBytesWithReturnedLength(_ lengthp: UnsafeMutablePointer<Int>) -> UnsafeMutablePointer<Void>

    Objective C

    - (void *)decodeBytesWithReturnedLength:(NSUInteger *)lengthp

    Обсуждение

    NSCoderреализация вызывает decodeValueOfObjCType:at: декодировать данные как ряд байтов, которые этот метод тогда помещает в буфер и возвраты. Длина буфера возвращается ссылкой в numBytes. Если Вам нужны байты вне объема тока @autoreleasepool блок, необходимо скопировать их.

    Этот метод соответствует encodeBytes:length: сообщение используется во время кодирования.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует и возвращается NSData объект, ранее закодированный с encodeDataObject:. Подклассы должны переопределить этот метод.

    Объявление

    Swift

    func decodeDataObject() -> NSData?

    Objective C

    - (NSData *)decodeDataObject

    Обсуждение

    Реализация Вашего метода переопределения должна соответствовать реализацию Вашего encodeDataObject: метод. Например, типичное encodeDataObject: метод кодирует число байтов данных, сопровождаемых самими байтами. Ваше переопределение этого метода должно считать число байтов, создать NSData объект надлежащего размера, и декодирует байты в новое NSData объект.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует и возвращает двойное значение, ранее закодированное с также encodeFloat:forKey: или encodeDouble:forKey: и связанный со строкой key.

    Объявление

    Swift

    func decodeDoubleForKey(_ key: String) -> Double

    Objective C

    - (double)decodeDoubleForKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует и возвращает значение плавающее, ранее закодированное с encodeFloat:forKey: или encodeDouble:forKey: и связанный со строкой key.

    Объявление

    Swift

    func decodeFloatForKey(_ key: String) -> Float

    Objective C

    - (float)decodeFloatForKey:(NSString *)key

    Обсуждение

    Если значение было закодировано как двойное, дополнительная точность потеряна. Если закодированное действительное значение не вписывается в плавание, метод повышает NSRangeException. Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует и возвращает международное значение, ранее закодированное с encodeInt:forKey:, encodeInteger:forKey:, encodeInt32:forKey:, или encodeInt64:forKey: и связанный со строкой key.

    Объявление

    Swift

    func decodeIntForKey(_ key: String) -> Int32

    Objective C

    - (int)decodeIntForKey:(NSString *)key

    Обсуждение

    Если закодированное целое число не вписывается в целочисленный размер по умолчанию, метод повышает NSRangeException. Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует и возвращает значение NSInteger, ранее закодированное с encodeInt:forKey:, encodeInteger:forKey:, encodeInt32:forKey:, или encodeInt64:forKey: и связанный со строкой key.

    Объявление

    Swift

    func decodeIntegerForKey(_ key: String) -> Int

    Objective C

    - (NSInteger)decodeIntegerForKey:(NSString *)key

    Обсуждение

    Если закодированное целое число не вписывается в размер NSInteger, метод повышает NSRangeException. Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.5 и позже.

  • Декодирует и возвращает 32-разрядное целочисленное значение, ранее закодированное с encodeInt:forKey:, encodeInteger:forKey:, encodeInt32:forKey:, или encodeInt64:forKey: и связанный со строкой key.

    Объявление

    Swift

    func decodeInt32ForKey(_ key: String) -> Int32

    Objective C

    - (int32_t)decodeInt32ForKey:(NSString *)key

    Обсуждение

    Если закодированное целое число не вписывается в 32-разрядное целое число, метод повышает NSRangeException. Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует и возвращает 64-разрядное целочисленное значение, ранее закодированное с encodeInt:forKey:, encodeInteger:forKey:, encodeInt32:forKey:, или encodeInt64:forKey: и связанный со строкой key.

    Объявление

    Swift

    func decodeInt64ForKey(_ key: String) -> Int64

    Objective C

    - (int64_t)decodeInt64ForKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует объект, ранее записанный с encodeNXObject:.

    Объявление

    Objective C

    - (id)decodeNXObject

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

  • Декодирует объект Objective C, ранее закодированный с любым из encode...Object: методы.

    Объявление

    Swift

    func decodeObject() -> AnyObject?

    Objective C

    - (id)decodeObject

    Обсуждение

    NSCoderреализация вызывает decodeValueOfObjCType:at: декодировать данные объектов.

    Подклассы, возможно, должны переопределить этот метод, если они переопределяют какое-либо соответствие encode...Object: методы. Например, если объект был закодирован условно с помощью encodeConditionalObject: метод, этот метод должен проверить, был ли фактически закодирован объект.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует и возвращает объект Objective C, ранее закодированный с encodeObject:forKey: или encodeConditionalObject:forKey: и связанный со строкой key.

    Объявление

    Swift

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

    Objective C

    - (id)decodeObjectForKey:(NSString *)key

    Обсуждение

    Подклассы должны переопределить этот метод, если они выполняют включенное кодирование.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует и возвращает структуру NSPoint, ранее закодированную с encodePoint:.

    Объявление

    Swift

    func decodePoint() -> NSPoint

    Objective C

    - (NSPoint)decodePoint

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует и возвращает структуру NSPoint, ранее закодированную с encodePoint:forKey:.

    Объявление

    Swift

    func decodePointForKey(_ key: String) -> NSPoint

    Objective C

    - (NSPoint)decodePointForKey:(NSString *)key

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует список свойств, ранее закодированный с encodePropertyList:.

    Объявление

    Swift

    func decodePropertyList() -> AnyObject?

    Objective C

    - (id)decodePropertyList

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует и возвращает структуру NSRect, ранее закодированную с encodeRect:.

    Объявление

    Swift

    func decodeRect() -> NSRect

    Objective C

    - (NSRect)decodeRect

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует и возвращает структуру NSRect, ранее закодированную с encodeRect:forKey:.

    Объявление

    Swift

    func decodeRectForKey(_ key: String) -> NSRect

    Objective C

    - (NSRect)decodeRectForKey:(NSString *)key

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует и возвращает структуру NSSize, ранее закодированную с encodeSize:.

    Объявление

    Swift

    func decodeSize() -> NSSize

    Objective C

    - (NSSize)decodeSize

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует и возвращает структуру NSSize, ранее закодированную с encodeSize:forKey:.

    Объявление

    Swift

    func decodeSizeForKey(_ key: String) -> NSSize

    Objective C

    - (NSSize)decodeSizeForKey:(NSString *)key

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Декодирует единственное значение, типом Objective C которого дают valueType.

    Объявление

    Swift

    func decodeValueOfObjCType(_ type: UnsafePointer<Int8>, at data: UnsafeMutablePointer<Void>)

    Objective C

    - (void)decodeValueOfObjCType:(const char *)type at:(void *)data

    Обсуждение

    valueType должен содержать точно один код типа и буфер, указанный data должно быть достаточно большим для содержания значения, соответствующего тому коду типа. Для получения информации о создании Objective C вводят код, подходящий для valueType, посмотрите Кодировки Типа.

    Подклассы должны переопределить этот метод и обеспечить реализацию для декодирования значения. В Вашей переопределяющей реализации декодируйте значение в буферное начало в data.

    Этот метод соответствует encodeValueOfObjCType:at: сообщение используется во время кодирования.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует серию потенциально различных типов Objective C.

    Объявление

    Objective C

    - (void)decodeValuesOfObjCTypes:(const char *)types, ...

    Обсуждение

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

    Этот метод соответствует encodeValuesOfObjCTypes: сообщение используется во время кодирования.

    NSCoderреализация вызывает decodeValueOfObjCType:at: декодировать отдельные типы. Подклассы, реализующие decodeValueOfObjCType:at: метод не должен переопределять этот метод.

    Для получения информации о создании Objective C вводят коды, подходящие для valueTypes, посмотрите Кодировки Типа.

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

    Вы не должны использовать этот метод для декодирования объектов Objective C. Посмотрите decodeArrayOfObjCType:count:at: для большего количества подробных данных.

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

    Objective C

    @import Foundation;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Декодирует объект для ключа, ограниченного указанным классом.

    Объявление

    Swift

    func decodeObjectOfClass(_ aClass: AnyClass, forKey key: String) -> AnyObject?

    Objective C

    - (id)decodeObjectOfClass:(Class)aClass forKey:(NSString *)key

    Параметры

    aClass

    Ожидать тип класса.

    key

    Ключ кодера.

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

    Декодируемый объект.

    Обсуждение

    Если отвечает кодер YEStrue к requiresSecureCoding, тогда исключение будет выдано, если класс, который будет декодироваться, не реализует NSSecureCoding или не isKindOfClass: из aClass.

    Если отвечает кодер NOfalse к requiresSecureCoding, тогда параметр класса проигнорирован, и никакая проверка класса декодируемого объекта не выполняется, точно как будто decodeObjectForKey: был вызван.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.8 и позже.

  • Декодирует объект для ключа, ограниченного указанными классами.

    Объявление

    Swift

    func decodeObjectOfClasses(_ classes: NSSet, forKey key: String) -> AnyObject?

    Objective C

    - (id)decodeObjectOfClasses:(NSSet *)classes forKey:(NSString *)key

    Параметры

    classes

    Ряд ожидаемых классов.

    key

    Ключ кодера.

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

    Декодируемый объект.

    Обсуждение

    Класс объекта может быть любым классом в classes набор или подкласс любого класса в наборе. Иначе, поведение совпадает с decodeObjectOfClass:forKey:.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.8 и позже.

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

    Объявление

    Swift

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

    Objective C

    - (id)decodePropertyListForKey:(NSString *)key

    Параметры

    key

    Ключ кодера.

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

    Декодируемый объект, содержащий список свойств.

    Обсуждение

    Это вызовы метода decodeObjectOfClasses:forKey: с набором, позволяющим только типы списка свойств.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.8 и позже.

  • Декодирует цветовую структуру от Выпуска 3 NEXTSTEP или ранее и возвращается NSColor объект.

    Объявление

    Objective C

    - (NSColor *)decodeNXColor

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

    Автовыпущенный NSColor объект. Возвраты nil если заархивированный цвет недопустим.

    Обсуждение

    Этот метод не имеет метода сопоставления для кодирования NXColor структура. Закодируйте NSColor объект вместо этого.

    NXColor, тип, что даты от версий pre-OpenStep NEXTSTEP, был a struct. Его замена, NSColor, класс. Трудности преобразования из a struct к классу требуют специального метода как decodeNXColor.

    decodeNXColor метод становится частью NSCoder класс только для приложений то использование AppKit.

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

    Objective C

    @import AppKit;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Возвраты CMTime структура связалась с данным ключом.

    Объявление

    Swift

    func decodeCMTimeForKey(_ key: String!) -> CMTime

    Objective C

    - (CMTime)decodeCMTimeForKey:(NSString *)key

    Параметры

    key

    Ключ для a CMTime структура закодирована в получателе.

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

    CMTime структура связалась с key в архиве.

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

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.7 и позже.

    См. также

    – encodeCMTime:forKey:

  • Возвраты CMTimeRange структура связалась с данным ключом.

    Объявление

    Swift

    func decodeCMTimeRangeForKey(_ key: String!) -> CMTimeRange

    Objective C

    - (CMTimeRange)decodeCMTimeRangeForKey:(NSString *)key

    Параметры

    key

    Ключ для a CMTimeRange структура закодирована в получателе.

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

    CMTimeRange структура связалась с key в архиве.

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

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.7 и позже.

  • Возвраты CMTimeMapping структура связалась с данным ключом.

    Объявление

    Swift

    func decodeCMTimeMappingForKey(_ key: String!) -> CMTimeMapping

    Objective C

    - (CMTimeMapping)decodeCMTimeMappingForKey:(NSString *)key

    Параметры

    key

    Ключ для a CMTimeMapping структура закодирована в получателе.

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

    CMTimeMapping структура связалась с key в архиве.

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

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.7 и позже.

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

    Объявление

    Swift

    var requiresSecureCoding: Bool { get }

    Objective C

    @property(readonly) BOOL requiresSecureCoding

    Обсуждение

    YEStrue если этот кодер требует безопасного кодирования; NOfalse иначе.

    Безопасные кодеры проверяют ряд позволенных классов прежде, чем декодировать объекты, и все объекты должны реализовать NSSecureCoding протокол.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.8 и позже.

    См. также

    – allowsKeyedCoding

  • allowedClasses allowedClasses Свойство

    Набор кодированных классов допускал безопасное кодирование. (только для чтения)

    Объявление

    Swift

    @NSCopying var allowedClasses: NSSet? { get }

    Objective C

    @property(readonly, copy) NSSet *allowedClasses

    Обсуждение

    Безопасные кодеры проверяют этот набор позволенных классов прежде, чем декодировать объекты, и все объекты должны реализовать NSSecureCoding протокол.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.8 и позже.

    См. также

    – requiresSecureCoding

  • systemVersion systemVersion Свойство

    Версия системы в действительности для архива. (только для чтения)

    Объявление

    Swift

    var systemVersion: UInt32 { get }

    Objective C

    @property(readonly) unsigned int systemVersion

    Обсуждение

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

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Этот метод присутствует по историческим причинам и не используется с включенным archivers.

    Объявление

    Swift

    func versionForClassName(_ className: String) -> Int

    Objective C

    - (NSInteger)versionForClassName:(NSString *)className

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

    Версию в действительности для класса называют className или NSNotFound если не называют никакой класс className существует.

    Обсуждение

    Номер версии применяется не к NSKeyedArchiver/NSKeyedUnarchiver. Включенный archiver не кодирует номера версии класса.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Этот метод присутствует по историческим причинам и не имеет никакого эффекта.

    Объявление

    Objective C

    - (NSZone *)objectZone

    Обсуждение

    NSCoderреализация возвращает зону памяти по умолчанию, как дано NSDefaultMallocZone().

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

    Objective C

    @import Foundation;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Этот метод присутствует по историческим причинам и не имеет никакого эффекта.

    Объявление

    Objective C

    - (void)setObjectZone:(NSZone *)zone

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

    Objective C

    @import Foundation;

    Доступность

    Доступный в OS X v10.0 и позже.