Вам необходимо создать прозрачное представление, а затем добавить его в качестве подпредставления к контроллеру представления, так что это брат UITableView
. Это можно сделать методом viewDidLoad()
.
- (void)viewDidLoad
{
int viewHeight = 50;
// Assume myTableView is a UITableView variable
myTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height - 44) style:UITableViewStylePlain];
myTableView.scrollIndicatorInsets = UIEdgeInsetsMake(viewHeight, 0, 0, 0);
myTableView.contentInset = UIEdgeInsetsMake(viewHeight, 0, 0, 0);
UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(0,0,self.view.frame.size.width,viewHeight)];
// Configure your view here.
myView.backgroundColor = [UIColor colorWithRed:0.0 green:0.7 blue:0.8 alpha:0.75];
[self.view addSubview:myTableView];
[self.view addSubview:myView];
[myView release];
}
Вы также можете настроить свой вид, используя XIB, но я оставлю это как упражнение для вас.
Редактировать: Убрано требование для методов делегата UITableView
и пользовательского представления заголовка, используя вместо этого свойство contentInset
.
Примечание: см. Дополнительные комментарии ниже.