单元格的 detailTextLabel 未在 swift 3 中显示

Posted

技术标签:

【中文标题】单元格的 detailTextLabel 未在 swift 3 中显示【英文标题】:detailTextLabel of cell does not show in swift 3 【发布时间】:2016-11-03 03:36:54 【问题描述】:

虽然设置了单元格的字幕样式,但是detailTextLabel仍然没有显示出来。

let cellIdentifier = "homeFeedItem"
let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier) ?? UITableViewCell(style: .subtitle,     reuseIdentifier: cellIdentifier)
cell.textLabel?.text = self.arrItems[indexPath.row]["title"]
cell.detailTextLabel?.text = self.arrItems[indexPath.row]["desc"]
cell.imageView?.image = UIImage(named: self.arrItems[indexPath.row]["icon"]!)

我尝试打印 self.arrItems[indexPath.row]["desc"]。没关系。 请帮我解决它。

【问题讨论】:

您是否在 Interface Builder 中设置了样式?使用方法dequeueReusableCell(withIdentifier:forIndexPath:) 始终获取有效的非可选重用单元格。 感谢您的回复!我以编程方式设置它。 如果你以编程方式设置它——我不明白你为什么让事情变得更复杂——你必须确保分别设置所有单元格的样式。 【参考方案1】:

好的,我明白了。最初由Scott Berrevoets回答

根据SO post,注册 UITableViewCell 意味着所有单元格都将使用默认样式进行实例化。 registerClass:forCellReuseIdentifier: 不提供字幕和左右细节单元格。

【讨论】:

确定我全部设置好了。

以上是关于单元格的 detailTextLabel 未在 swift 3 中显示的主要内容,如果未能解决你的问题,请参考以下文章

如何在静态 UITableView 中设置 detailTextLabel.text?

有没有办法获取单元格的字幕长度(detailedTextLabel)?

自我调整大小的表格视图单元格不起作用

UITableView detailTextLabel 不适用于自定义单元格

使用默认单元格值加载一次视图后如何更新 UITableView 单元格(cell.detailTextLabel.text)的值

在代码中初始化单元格时如何使用detailTextLabel?