【问题标题】:What is the use of NSCoder in initWithCoder:? (Cocoa and Cocoa Touch)initWithCoder:中NSCoder有什么用? (可可和可可触摸)
【发布时间】:2012-02-06 07:19:14
【问题描述】:

NSCoder在这里的作用是什么?

- (id)initWithCoder:(NSCoder *)coder
{
    self = [super initWithCoder:coder];
    if (self)
    {

    }
    return self;
}

【问题讨论】:

  • 这与 Xcode 完全无关。

标签: objective-c cocoa-touch cocoa serialization nscoder


【解决方案1】:

NSCoder 保存您保存实例的存档表示以在-[id<NSCoding> encodeWithCoder:] 中初始化的状态。

换句话说,您在某个时间点编码了一个 self 的实例,现在您需要编码器的信息来恢复您的状态。

【讨论】:

    【解决方案2】:

    NSCoder 处理归档,尤其是在这种典型的视图案例中,NIB 的归档。因此,当您 initWithCoder 加载 NIB 时,会使用您在 Interface Builder 中构建的界面。

    您可以在这里阅读更多内容:https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Protocols/NSNibAwaking_Protocol/Reference/Reference.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多