如何在Swift中删除左侧的UITableView偏移量

joh*_*ywu 7 uitableview ios swift

我发现了一些问题和答案,以删除ios7中UITableViews的偏移量,即这一个 如何在iOS 7上修复UITableView分隔符?

我想知道是否有人遇到了正确的功能来删除插入边距.在objective-c中类似于这个答案的东西

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

小智 13

你可以设置属性: tableView.separatorInset = UIEdgeInsetsZero

  • 嘿这应该通常与我的tableview一起使用,但我的表视图仍然包含边框.可能是某些事情凌驾于我的背景之上 (2认同)

Ken*_*lor 9

就像Objective-C示例一样,但转换为swift.我自己遇到了一些麻烦.如果您在UITableViewController中执行此代码,则可以在UITableView中使用此代码,您可以将self.tableView替换为self:

// iOS 7
if(self.respondsToSelector(Selector("setSeparatorInset:"))){
    self.separatorInset = UIEdgeInsetsZero
}

// iOS 8
if(self.respondsToSelector(Selector("setLayoutMargins:"))){
    self.layoutMargins = UIEdgeInsetsZero;
}
Run Code Online (Sandbox Code Playgroud)

对于单元格(仅限iOS 8),将以下代码放在以下函数中:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath)
Run Code Online (Sandbox Code Playgroud)

获取单元格,并设置以下属性:

// iOS 8
if(cell.respondsToSelector(Selector("setLayoutMargins:"))){
    cell.layoutMargins = UIEdgeInsetsZero;
}
Run Code Online (Sandbox Code Playgroud)