【问题标题】:Facing a crash while adding object to NSMutableArray向 NSMutableArray 添加对象时遇到崩溃
【发布时间】:2018-03-26 06:54:58
【问题描述】:

我在向 NSMutableArray 添加对象时收到此崩溃消息:

-[Swift._SwiftDeferredNSArray addObject:]:无法识别的选择器发送到实例 0x618000238d80

获取数组类型,结果显示 SwiftDeferredNSArray。 有没有办法转换数组或者我做错了什么?

代码:

var List = NSMutableArray()

添加对象:

List.add(obj)

【问题讨论】:

  • 你确定数组是可变的吗?
  • 是的,我将其声明为 NSMutableArray
  • 你能在这里贴一些代码吗?
  • 这是一个swift,不要使用NSMutableArray
  • 在 Swift 3+ 中更喜欢 Swift 等价物,避免使用 NSStuffs。避免以大写开头命名您的 var。另外,我倾向于认为在您的代码中的某个时刻您会执行 List = something 并且因为 something 是 NSArray 而不是 NSMutableArray 它可能会崩溃。

标签: ios swift nsmutablearray


【解决方案1】:

你应该在 Swift 中这样使用NSMutableArray

var data : [Any] = []

其中Any 是对象类型。

然后你可以使用这个附加孩子,

for i in 1...15 {
    data.append("New Object \(i)")
}

【讨论】:

    【解决方案2】:

    嘿兄弟,它很简单,请使用这个

    var List:NSMutableArray = []
     List.add()
    

    【讨论】:

      【解决方案3】:

      我在 Swift 中使用 Like this 来声明

      var arrDrop :NSMutableArray = []
        arrDrop.add(valueData)
      

      【讨论】:

        【解决方案4】:

        你应该在 Swift 中以这种方式使用 NSMutableArray

        变量列表:NSMutableArray = NSMutableArray()

        List.add(obj)

        【讨论】:

          猜你喜欢
          • 2017-07-13
          • 2011-06-10
          • 1970-01-01
          • 2012-03-03
          • 2014-07-11
          • 1970-01-01
          • 1970-01-01
          • 2013-05-05
          相关资源
          最近更新 更多