应用程序崩溃Swift Xcode 6.1与某些方法

时间:2014-11-09 09:43:03

标签: swift parse-platform xcode6.1

我的应用程序崩溃了这个方法:

func loadData() {
    timelineData.removeAllObjects()

    var findTimelineData:PFQuery = PFQuery(className:"AllTweets")
    findTimelineData.findObjectsInBackgroundWithBlock {
        (objects:[AnyObject]!, error:NSError!)-> Void in
        if (error == nil) {
            for object:AnyObject in objects {
                self.timelineData.addObject(object as PFObject)
            }

            let array:NSArray = self.timelineData.reverseObjectEnumerator().allObjects
            self.timelineData = array as NSMutableArray
            self.tableView.reloadData()
        }
    }
}

它抛出的错误是: ECX_BREAKPOINT(代码= EXC_I386_BPT,子码=为0x0)

我在viewDidAppear方法中调用此方法。

有没有人知道为什么会这样?

1 个答案:

答案 0 :(得分:0)

reverseObjectEnumerator()。allObjects将返回NSArray,无论原始数组的类型是否为Mutable。 (https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSEnumerator_Class/index.html#//apple_ref/occ/instp/NSEnumerator/allObjects

在swift中,如果你需要一个可变数组,那么使用

var mutableArray = array.reverseObjectEnumerator().allObjects

var是可变的,而let是相反的。