tableviewcell分隔符在ios 8中移动

Ted*_*Ted 3 objective-c separator tableviewcell ios8

我正在以编程方式创建tableviews和单元格.tableview单元格分隔符在iOS 8中移动,

在此输入图像描述

即使我已经设定:

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    return kSomeNumber;
}
Run Code Online (Sandbox Code Playgroud)

我的应用程序是ios7,我的手机是ios8.可能是什么问题呢?我不能使用仅适用于ios8的cell.layoutMargins

Sjo*_*ors 5

从iOS8开始,我们有layoutMargins,它会导致你的线路.

如果您有自定义单元格,请添加此方法以将其删除:

- (UIEdgeInsets)layoutMargins 
{
     return UIEdgeInsetsZero;
}
Run Code Online (Sandbox Code Playgroud)

或者在你的uitableviewcontroller中添加:

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

   if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
        [cell setLayoutMargins:UIEdgeInsetsZero];
   }
}
Run Code Online (Sandbox Code Playgroud)

需要responsToSelector才能支持iOS7

同时检查iOS 8 UITableView分隔符插入0不起作用以获取更多信息