我正在尝试在swift中关注Core Data的教程,该教程似乎是来自旧版本的swift,我开始遇到错误,视频海报不是
以下内容完全相同,但我收到了错误:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath?) -> UITableViewCell {
let CellID: NSString = "Cell"
var cell: UITableViewCell = tableView?.dequeueReusableCellWithIdentifier(CellID) as UITableViewCell
//error: operand of postfix '?' should have optional type: type is uitableview.
if let ip = indexPath {
var data: NSManagedObject = myList[ip.row] as NSManagedObject
cell.textLabel.text = data.valueForKeyPath("username")
//UILabel? does not have a member named "text'
}
return cell
}
我被困在这一小时,我想放弃。已经迅速改变到不能像这样做的地方
答案 0 :(得分:0)
经过一些试验:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let CellID = "Cell"
var cell = tableView.dequeueReusableCellWithIdentifier(CellID) as! UITableViewCell
var data = myList[indexPath.row] as! NSManagedObject
cell.textLabel?.text = data.valueForKey("username") as? String
return cell
}
复制并替换上面的方法,希望编译器不会抱怨。
[代码用Xcode 6.3(Swift 1.2)编写]