This seems to be a bug in iOS 7 if you are not using custom cells.
Setting indentationLevel or indentationWidth inside tableView:cellForRowAtIndexPath: does not affect the layout of the cell when it is time to display it.
For example, consider the following code:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath]; BOOL isIndented = indexPath.row % 2; cell.textLabel.text = isIndented ? @"Indented" : @"Not indented"; cell.indentationLevel = isIndented; }
I don't have enough reputation to post screenshots, but the result is different between iOS 6 and iOS 7. This is using Xcode 5 and iOS 7 SDK.
Skyboat
source share