问题是我第一次获取数据WebServices
所以我已经显示了这些数据TableView
然后用户向下滚动表视图,然后再次调用WebSevices
并将此数据再次添加到数组中
但是当我尝试在 nsmutable 类型数组应用程序中再次添加数据时crashing
这是我的代码。有什么解决办法吗?
第一次数据加载正常
var ary_mutable: NSMutableArray!
ary_mutable = NSMutableArray()
ary_mutable=jsonResult as AnyObject as! NSMutableArray
self.tbl_T.reloadData();
self.tbl_T.delegate=self;
self.tbl_T.dataSource=self;
第二次数据加载并添加旧数组不起作用
var myArray :NSArray!
myArray = jsonResult as AnyObject as! NSArray
ary_mutable.addObject(myArray.objectAtIndex(0))
出现此错误
[__NSCFArray insertObject:atIndex:]: mutating method sent to immutable object'
我也尝试过这个代码但不起作用
ary_mutable.addObject(myArray)
您应该从不可变数组创建一个可变数组。这:
ary_mutable=jsonResult as AnyObject as! NSMutableArray
不这样做,它只是从一种类型到另一种类型的静态转换。您必须构造一个新的 NSMutableArray,然后用所需的值填充它。
将您的代码更改为
var ary_mutable = NSMutableArray()
// everytime you receive a new data
ary_mutable.addObjectsFromArray(jsonResult as! [AnyObject])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)