我正在将我的自定义类对象绑定到一个表视图,但它没有显示任何内容
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上正确地显示数据。
发布于 2015-11-08 12:19:36
您打印到控制台的内容似乎不正确。
您的语句print(carName)
未访问您的cars
数组。
尝试添加print(row.carName)
来调试您的问题。
如果您在控制台中获得了正确的输出,那么这意味着
cell.carNameLabel.text = carName
应将正确的值添加到您的标签。
但是,根据您所显示的代码,它在我看来是不正确的,因为我不能将carName
看作来自cars
数组中的数据。
您还应该显示类似这样的内容
class SearchTableViewCell: UITableViewCell {
@IBOutlet var carNameLabel: UILabel!
}
这样我们就可以确定标签是否存在。
另外,作为命名的提示,类名应该以大写字母开头。这是苹果和大多数iOS开发人员的惯例。
https://stackoverflow.com/questions/33590484
复制相似问题