UITableViewの記載ルールについては割愛してます。
- (void)viewDidLoad {
...
// セパレーターの左端が切れないように
if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {
[self.tableView setSeparatorInset:UIEdgeInsetsZero];
}
self.tableView.separatorInset = UIEdgeInsetsZero;
if ([self.tableView respondsToSelector:@selector(layoutMargins)]) {
self.tableView.layoutMargins = UIEdgeInsetsZero;
}
...
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
...
// セパレーターの左端が切れないように
if ([cell respondsToSelector:@selector(separatorInset)]) {
cell.separatorInset = UIEdgeInsetsZero;
}
if ([cell respondsToSelector:@selector(preservesSuperviewLayoutMargins)]) {
cell.preservesSuperviewLayoutMargins = false;
}
if ([cell respondsToSelector:@selector(layoutMargins)]) {
cell.layoutMargins = UIEdgeInsetsZero;
}
...
}
参考:
http://dev.classmethod.jp/smartphone/iphone/ios-8-uitableview-layoutmargins/
これで少しハマった。。。