Question: On iOS 6, my UITableView's section index would distribute all of its items evenly across the height of the table view. In iOS 7 all of the items are clumped together in the middle, making the items difficult to tap. Is there any way to space them out?

Answer: 
There is a slightly easier way to complete Anton's suggestion, also it can be expanded to any number of indexes per section (instead of just having two as Anton suggested). So you add the number of extra index titles you want. In this example I used 4.

So first you add the things to an `indexTitles` array, in `viewDidLoad` or whatever.
NOTE: This can also be done dynamically if you are adding content to the tableView
asynchronously, that's why I added the if statement, so as long as its not the first
one it will replace the empty strings with periods. This is so there will be no stray
periods at the end

```
@property (nonatomic, strong) NSArray *indexTitles;

- (void) addIndexTitle:(NSString *) indexTitle {
        if ([self.indexTitles count]) {
            NSInteger last = self.indexTitles.count;
            self.indexTitles[last - 1] = @".";
            self.indexTitles[last - 2] = @"."; // Change the number of these depending
            self.indexTitles[last - 3] = @"."; // on the number of lines in the index titles
        }
        [self.indexTitles addObject:indexTitle];
        [self.indexTitles addObject:@""];  // Add different strings here for multiline 
        [self.indexTitles addObject:@""];  // index titles
        [self.indexTitles addObject:@""];
}

```

Now we can just use the modulo operator depending on how many strings we have per index Title.

```
- (NSInteger) tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index {
    index = index - index % 4;  // This is the index of the section you want
    NSInteger newIndex = index;
    // do any other processing here (if need be) to determine the correct index here
    return newIndex;

```

}

Don't forget to declare the the section index titles for the tableView.

```
- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView {
    return self.indexTitles;
}

```

Here is one that I made that loads the content dynamically:

![example](https://puu.sh/6ZP6U.png)
I tried the workaround by Jatin, but the result was only the change in colour and font of the section index. It remains vertically compressed and centered.

I think this is the new behaviour of iOS7 (although I think this is not the best visual appearance). This behaviour is visible also in this official document from Apple: [iOS Human Interface Guidelines - Table View](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/ContentViews.html#//apple_ref/doc/uid/TP40006556-CH13-SW3)