Ios UITableViewCell.SeparatorStyle.none如何工作?
我知道它应该“移除”分离器,但事实并非如此:Ios UITableViewCell.SeparatorStyle.none如何工作?,ios,uitableview,Ios,Uitableview,我知道它应该“移除”分离器,但事实并非如此: 如果查看视图的层次结构,将看到\u UITableViewCellSeparatorView被添加为单元格的子视图 分隔符的ishiden属性也是false 分隔符的alpha为1.0 分隔符的框架在单元格的边界内,因此不会被剪裁 那么分隔符是如何“删除”的呢?当单元格分隔符样式设置为“无”时,将添加一个背景色为“无”的\UITableViewCellSeparatorView 如果分隔符样式设置为单线,您将看到每个单元格都有一个附加的分隔符视图
\u UITableViewCellSeparatorView
被添加为单元格的子视图李>
ishiden
属性也是false
alpha
为1.0
那么分隔符是如何“删除”的呢?当单元格分隔符样式设置为“无”时,将添加一个背景色为“无”的
\UITableViewCellSeparatorView
如果分隔符样式设置为单线,您将看到每个单元格都有一个附加的分隔符视图,其背景色为非nil。分隔符视图实际上是一条线
如果在打开分隔符的情况下运行“调试视图层次结构”,我会在每个单元格中看到两个\u UITableViewCellSeparatorView
s
一个具有nil
背景色,另一个具有默认颜色
如果我在关闭分隔符的情况下运行它,我只会看到一个分隔符视图,其背景颜色为零
因此,当分隔符关闭时,被移除的视图似乎是具有背景颜色的视图
不确定为什么层次结构中有一个额外的视图,可能一个用于美学,一个用于定位单元格内容 谢谢你的澄清!我可以问一下为什么会有一个额外的分隔符视图(nil视图)?@RayTso我的猜测与shim的相同-这些可能有助于建立表视图的单元格结构。