Koloda代表:致命错误:在展开Optional值时意外发现nil

时间:2015-08-31 01:26:48

标签: ios swift

我在我的项目中使用Koloda,每当我尝试加载一个视图控制器时,我得到错误"致命错误:在解开一个Optional值时意外发现nil"在kolodaView.dataSource = self上然后如果已注释掉,我会在kolodaView.delegate = self上收到相同的错误。我对IOS和Swift相当新,所以我不确定发生了什么。以下是Koloda viewcontroller中的代码显示错误的位置:

 override func viewDidLoad() {
    super.viewDidLoad()

    kolodaView.dataSource = self
    kolodaView.delegate = self

    self.modalTransitionStyle = UIModalTransitionStyle.FlipHorizontal
}

以下是我尝试加载的UIViewController中的代码。它们也没有任何链接。

import Foundation
import UIKit

class genderSelection1: ViewController, UITableViewDelegate, UITableViewDataSource{




@IBOutlet weak var tableView: UITableView!

override func viewDidLoad() {
    super.viewDidLoad()
    self.tableView.delegate = self
    self.tableView.dataSource = self

}


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

// MARK: - Table view data source

func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return 2
}

func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {

    let  headerCell = tableView.dequeueReusableCellWithIdentifier("headerCell") as! UITableViewCell
    headerCell.backgroundColor = UIColor.groupTableViewBackgroundColor()
    return headerCell
}

func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {

    return 1
}

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

    return 1
}


func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! UITableViewCell

    return cell
}

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {

    tableView.deselectRowAtIndexPath(indexPath, animated: true)

}
}

1 个答案:

答案 0 :(得分:0)

kolodaView实例为零。通过在super.viewDidLoad()之后放置NSLog来验证这一点。

NSLog("kolodaView  \(kolodaView)");

我认为,您尚未正确连接IBOutlet。你需要检查一下。