为什么在Swift中UITableViewCell detailTextLabel是可选的,而textLabel则不是

我想我有点不同“?” 和“!” 用迅捷的语言。 但是在工作的时候,我面对的东西让我更加困惑。

当使用tableview时,我在UITableViewCellfind了以下数据types

textLabeldetailTextLabel?

我的问题是:为什么是detailTextLabel? 即使textLabel可能也是可选的?

detailTextLabel是可选的,因为它可能是零。 检查文档 :

如果样式不支持细节标签,则返回nil。 有关当前定义的单元格样式中主标签的说明,请参阅UITableViewCellStyle。

所以如果你的表视图样式不支持detail标签访问detailTextLabel将返回零。 因此它是可选的。

textlabel在另一方面创build如果需要因此它不是可选的:)