突出显示的UITableViewCell和选定的UITableViewCell之间有什么区别?

一个UITableViewCell反映了两个不同的状态:突出显示和select。

对我来说,他们听起来是一样的,所以差别究竟是什么?

高光发生在接触下。

select发生在触摸上,然后调用didSelectRowAtIndexPath: 在一个标准的UITableView ,高亮和select之间通常会有一个小的延迟。

从外观上看:

选定的细胞:

select会影响标签,图像和背景的外观。 当单元格的选定状态设置为“是”时,将为其所选单元格的背景绘制白色标题。

背景将根据selectionStyleselectedBackgroundView值绘制。 苹果公司文档中提到的我没有看到任何白名单。 我只是看到了预期的背景变化。

突出显示的细胞:

突出显示会影响标签,图像和背景的外观。 当单元格的突出显示状态设置为YES时,标签将以突出显示的文本颜色绘制(默认为白色)。 请注意,要突出显示正常工作,您必须使用textLabel和detailTextLabel属性获取单元格的标签,并设置每个标签的highlightedTextColor属性; 对于图像,使用imageView属性获取单元格的图像,并设置UIImageView对象的HighlightImage属性。

再次,我不真的看到默认的高亮文本颜色是白色的。

所以我得出结论:选中的单元格外观会影响单元格的背景,而突出显示的单元格会影响标签文本颜色以及图像(如果设置了highlightImage属性)