经常有需求隐藏一个section的最后一条分割线, 然而自定义cell有些过于繁琐
我们都知道设置某一条分割线的边距位0
cell.separatorInset = UIEdgeInsetsMake(0, 0, 0, 0)
隐藏某一条cell的分割线
cell.separatorInset = UIEdgeInsetsMake(0, 0, 0, __kScreenWidth/** cell的宽 */)
但是在iOS9下效果颇有不理想
设置边距位0
隐藏分割线
解决办法 追加以下方法
//iOS9 分割线 隐藏或者设置边距0
func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
if cell.responds(to: #selector(setter: UIView.preservesSuperviewLayoutMargins)) {
cell.preservesSuperviewLayoutMargins = false
}
if cell.responds(to: #selector(setter: UIView.layoutMargins)) {
cell.layoutMargins = UIEdgeInsetsMake(0, 0, 0, 0)
}
}