【问题标题】:NSDictionary inside a private NSArray gets deallocated outside the scope of viewDidLoad私有 NSArray 中的 NSDictionary 在 vi​​ewDidLoad 范围之外被释放
【发布时间】:2015-02-19 04:52:58
【问题描述】:

我在这里遇到了一个奇怪的情况。我有一个私人 NSArray 持有我的数据的 NSDictionary。一旦我移出 viewDidLoad 的范围(即进入另一个方法的范围),NSDictionary 就会自动解除分配,并且应用程序会因“发送到解除分配的实例的消息”而崩溃。将 NSArray 声明为强属性并不能解决问题。如何使 NSArray 保留其对象?

【问题讨论】:

    标签: nsarray nsdictionary


    【解决方案1】:

    问题解决了。我想我实际上并不拥有包含在我的数组中的字典,因此它在 viewDidLoad 的范围之外被释放。

    这是任何中级 iOS 开发人员的必读之书:

    https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/MemoryMgmt/MemoryMgmt.pdf

    【讨论】:

      猜你喜欢
      • 2016-11-10
      • 1970-01-01
      • 1970-01-01
      • 2011-01-08
      • 1970-01-01
      • 1970-01-01
      • 2014-06-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多