Если у вас есть только две ячейки, почему вы используете сгруппированный UITableView вместо ваших собственных пользовательских представлений. Я считаю, что простым решением было бы просто создать два пользовательских представления. Одна представляет две ячейки, а другая - меньший вид сверху ячеек.
Если вы используете TableView по той причине, что эта конструкция будет использоваться повторно, то вы можете создать вышеуказанную реализацию как один пользовательский UITableViewCell в Интерфейсном Разработчике, а затем просто загрузить его в cellForRowAtIndexPath:
DevCustomCell *cell = [tableView dequeueReusableCellWithIdentifier:@"DevCustomCell"];
if (cell == nil) {
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"DevCustomCell" owner:nil options:nil];
for (id currentObject in topLevelObjects) {
if ([currentObject isKindOfClass:[UITableViewCell class]]) {
cell = (DevCustomCell *)currentObject;
break;
}
}
}