我将自定义类对象绑定到表视图,但它没有显示任何内容
class car{
var carName:String = ""
var carModel:String = ""
var carPic:String = ""
}
在我的控制器中
var cars = [car]();
使用viewdidload()
中的coredata填充对象func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! SearchTableViewCell;
let row = cars[indexPath.row];
print(carName)
cell.carNameLabel.text = row.carName
return cell;
}
我能够正确地在控制台中看到carName,但是当我查看视图时,它显示我的空白,但我能够在选择行事件上执行所有操作。
我认为这可能是由于约束,但如果我将这个表视图绑定到某个数组,它会在UI上显示正确的数据。
答案 0 :(得分:0)
您在控制台上打印的内容似乎不正确。
您的陈述print(carName)
未访问您的cars
数组。
尝试添加print(row.carName)
来调试您的问题。
如果您在控制台中获得了正确的输出,那么这意味着
cell.carNameLabel.text = carName
应该为您的标签添加正确的值。
但是,根据您显示的代码,我似乎不正确,因为我无法看到carName
来自cars
数组中的数据。
您还应该显示类似
的内容class SearchTableViewCell: UITableViewCell {
@IBOutlet var carNameLabel: UILabel!
}
在您的代码中,以便我们可以确定标签存在。
此外,作为关于命名的提示,类名应以大写字母开头。这是Apple和大多数iOS开发人员的惯例。