Это старый вопрос, но, возможно, вы все еще хотите знать, как это сделать.
Я воспроизвел tableView, как в Stocks / Spotlight. Хитрость
view.layer.cornerRadius = 10;
Чтобы это работало, вам нужно включить QuartzCore в класс, который вы называете этим свойством:
#import <QuartzCore/QuartzCore.h>
Я слышал, что это работает только с OS 3.0. Но так как мое приложение использует основные данные, это не было проблемой, потому что оно уже было для OS 3.0 и выше.
Я создал пользовательский UIView с подпредставлением с cornerRadius 10 и с
view.backgroundColor = [UIColor clearColor];
Затем вы должны поместить сгруппированный стиль UITableView в это подпредставление. Вам нужно установить backgroundColor на clearColor, а separatorColor - clearColor. Затем вы должны расположить табличное представление внутри скругленного углового представления, это делается путем установки размера и источника кадра. Мой класс loadView моего пользовательского UIView выглядит так:
self.view = [[UIView alloc] init];
self.view.backgroundColor = [UIColor clearColor];
CustomUIViewClass *scherm = [[CustomUIViewClass alloc] init];
CGRect frame;
frame.origin.x = 10;
frame.origin.y = 50;
frame.size.width = 300;
frame.size.height = 380;
scherm.frame = frame;
scherm.clipsToBounds = YES;
scherm.layer.cornerRadius = 10;
[self.view addSubview:scherm];
CustomUITableViewClass *table = [[CustomUITableViewClass alloc] initWithStyle:UITableViewStyleGrouped];
frame.origin.y = -10;
frame.origin.x = -10;
frame.size.width = 320;
frame.size.height = 400;
table.tableView.frame = frame;
[scherm addSubview:table.tableView];
Надеюсь, вы понимаете мой английский, возможно, я напишу в блоге короткую статью об этой технике с примером проекта, опубликую здесь ссылку, когда я буду готов.