无法在 UI 表格视图自定义单元格中插入分隔符

Posted

技术标签:

【中文标题】无法在 UI 表格视图自定义单元格中插入分隔符【英文标题】:Can't make seperator insets in UI table view custom cell 【发布时间】:2016-03-23 11:00:02 【问题描述】:

我正在尝试制作从左右两侧插入 20 pt 的分隔符。 无论我做什么,我仍然会从一个边缘到另一个边缘得到一条完整的线。

我尝试了什么: 在属性检查器中选择分隔符 - 自定义插入并从左右添加 20 像素。

我也试过viewDidLoad -

self.tableView.separatorStyle = UITableViewCellSeparatorStyle.SingleLine
self.tableView.separatorInset = UIEdgeInsetsMake(0, 20, 0, 20)

我仍然得到一个完整的线路.. 任何帮助将不胜感激 谢谢

【问题讨论】:

【参考方案1】:

willDisplayCell 中执行setSeparatorInset

-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath

    if ([cell respondsToSelector:@selector(setSeparatorInset:)]) 
           [cell setSeparatorInset:UIEdgeInsetsMake(0, 20, 0, 20)];
    
    if ([cell respondsToSelector:@selector(setPreservesSuperviewLayoutMargins:)]) 
        [cell setPreservesSuperviewLayoutMargins:NO];
    
    if ([cell respondsToSelector:@selector(setLayoutMargins:)]) 
        [cell setLayoutMargins:UIEdgeInsetsMake(0, 20, 0, 20)];
    

参考:ios 8 UITableView separator inset 0 not working

【讨论】:

【参考方案2】:

您也可以在界面生成器中设置分隔符

转到属性检查器,您可以在分隔符插入下更改为您想要的值

【讨论】:

以上是关于无法在 UI 表格视图自定义单元格中插入分隔符的主要内容,如果未能解决你的问题,请参考以下文章

无法在自定义表格视图单元格中使 ImageView 成为一个圆圈

自定义表格单元格中的堆栈视图

为啥我的自定义表格单元格中的标签在单击行之前无法显示

iOS:自定义表格视图单元格中的约束

在表格视图单元格中使用自定义 XIB

如何停止在自定义表格视图单元格中交换数据?