1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
-(void)viewDidLayoutSubviews { if ([self.mytableview respondsToSelector:@selector(setSeparatorInset:)]) { [self.mytableview setSeparatorInset:UIEdgeInsetsZero]; } if ([self.mytableview respondsToSelector:@selector(setLayoutMargins:)]) { [self.mytableview setLayoutMargins:UIEdgeInsetsZero]; } } -(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPat{ if ([cell respondsToSelector:@selector(setLayoutMargins:)]) { [cell setLayoutMargins:UIEdgeInsetsZero]; } if ([cell respondsToSelector:@selector(setSeparatorInset:)]){ [cell setSeparatorInset:UIEdgeInsetsZero]; } } |
方法2:
使用UIAppearance,在程序开始的时候设置全局默认外观,不错的方法
1 2 3 4 5 6 7 8 9 |
[[UITableView appearance] setSeparatorStyle:UITableViewCellSeparatorStyleSingleLine]; [[UITableView appearance] setSeparatorInset:UIEdgeInsetsZero]; [[UITableViewCell appearance] setSeparatorInset:UIEdgeInsetsZero]; if ([UITableView instancesRespondToSelector:@selector(setLayoutMargins:)]) { [[UITableView appearance] setLayoutMargins:UIEdgeInsetsZero]; [[UITableViewCell appearance] setLayoutMargins:UIEdgeInsetsZero]; [[UITableViewCell appearance] setPreservesSuperviewLayoutMargins:NO]; } |
转载请注明:天狐博客 » iOS8 tableview separatorInset cell分割线左对齐,ios7的方法失效了