Transparent background in grouped UITableView - iPhone

remove UITableView backgroundView

xxx.backgroundView = nil;

This is necessary on iPad builds. When compiling to run on iPad and iPhone, check the tableView responds to the selector with ...

if ([self.tableView respondsToSelector:@selector(setBackgroundView:)]) {
    [self.tableView setBackgroundView:nil];
}

Instead of using

UIColor *bgColor = [[UIColor alloc] initWithWhite:1 alpha:0.0];
historyTable.backgroundColor = bgColor;

Just use:

historyTable.backgroundColor = [UIColor clearColor];

That also clears up the memory leak you were creating.