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

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

Разработчик

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

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

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

NSCoding

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


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

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


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

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


Swift

import Foundation

Objective C

@import Foundation;

Доступность


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

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

В соответствии с объектно-ориентированными принципами разработки, объект, закодированный или декодируемый, ответственен за кодирование и декодирование его переменных экземпляра. Кодер сообщает объекту сделать так путем вызова encodeWithCoder: или initWithCoder:. encodeWithCoder: сообщает объекту закодировать его переменные экземпляра к предоставленному кодеру; объект может получить этот метод любое число раз. initWithCoder: сообщает объекту инициализировать себя от данных в предоставленном кодере; как таковой, это заменяет любой другой метод инициализации и отправляется только один раз на объект. Любой класс объекта, который должен быть codable, должен принять NSCoding протокол и реализация его методы.

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

  • Возвращает объект, инициализированный из данных в данном unarchiver. (требуемый)

    Объявление

    Swift

    init(coder decoder: NSCoder)

    Objective C

    - (id)initWithCoder:(NSCoder *)decoder

    Параметры

    decoder

    Объект unarchiver.

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

    self, инициализированное использование данных в decoder.

    Обсуждение

    Необходимо возвратиться self от initWithCoder:. Если у Вас есть усовершенствованная потребность, требующая замены различным объектом после декодирования, можно сделать так в awakeAfterUsingCoder:.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Кодирует получатель с помощью данного archiver. (требуемый)

    Объявление

    Swift

    func encodeWithCoder(_ encoder: NSCoder)

    Objective C

    - (void)encodeWithCoder:(NSCoder *)encoder

    Параметры

    encoder

    Объект archiver.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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