tableViewCell分割线的相关设置

  去掉多余的cell分割线,自定义一个tableFooterView就好:

[m_tableView setTableFooterView:[[UIView alloc]initWithFrame:CGRectZero]];
CGRectZero 是说明frame为:(0,0,0,0)

cell分割线样式

tableView.separatorStyle

separatorStyle的值是一个枚举值,具体如下:

typedef NS_ENUM(NSInteger, UITableViewCellSeparatorStyle) {
    UITableViewCellSeparatorStyleNone,
    UITableViewCellSeparatorStyleSingleLine,
    UITableViewCellSeparatorStyleSingleLineEtched   // This separator style is only supported for grouped style table views currently
}

  如果不设置separatorStyle的话,默认是UITableViewCellSeparatorStyleSingleLine。也就是寻常tableView的cell样式。UITableViewCellSeparatorStyleNone是说明不显示cell分割线。UITableViewCellSeparatorStyleSingleLineEtched仅仅适用于Grouped样式的tableView。

cell分割线的颜色

tableView.separatorColor(默认是灰色的)

cell分割线左对齐:

  首先在viewDidLoad里面添加如下代码:

if ([self.m_tableView respondsToSelector:@selector(setSeparatorInset:)]) {
        [self.m_tableView setSeparatorInset: UIEdgeInsetsZero];
    }
    if ([self.m_tableView respondsToSelector:@selector(setLayoutMargins:)]) {
        [self.m_tableView setLayoutMargins: UIEdgeInsetsZero];
    }

  然后实现tableView的代理方法:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
        [cell setLayoutMargins:UIEdgeInsetsZero];
    }
    if ([cell respondsToSelector:@selector(setSeparatorInset:)]){
        [cell setSeparatorInset:UIEdgeInsetsZero];
    }
}

你可能感兴趣的:(tableViewCell分割线的相关设置)