Swift(XCode) - sigabrt错误

时间:2016-01-04 15:53:37

标签: ios swift sigabrt

我是xcode和Swift的新手。

当我完成我的应用程序时,我收到错误“SIGABRT”。我听说这很常见,但我在互联网上发现的所有解决方案都不起作用。我也听说我的代码是正确的,但故事板中存在问题。

var NamesOfExercises = [
    ["name":"example1"],
    ["name":"example2"],
    ["name":"kexample3"]]

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return 1
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return NamesOfExercises.count
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("mycell") as! ExercisesTableViewCell
    cell.nameLabel.text = NamesOfExercises[indexPath.item] ["name"]
    return cell
}

屏幕:

http://imgur.com/ZeA8fJQ

http://imgur.com/sDlTQCb

`

2 个答案:

答案 0 :(得分:0)

您的视图控制器被定义为表视图控制器(UITableViewController),但您的NIB中的顶级对象不是表视图(您可能有一个标准视图,甚至可能有一个具有表视图的视图作为子视图)。

如果放在故事板上的场景是标准UIViewController对象而不是UITableViewController对象,则可能会出现与故事板非常相似的错误。

如果您正在使用NIB,请确保顶级对象是表格视图。并确保将表视图的插座,委托和数据源连接到NIB的文件所有者。

答案 1 :(得分:0)

确保加载的nib文件的视图是UITableView对象