- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
if(section != 0) {
UIView *view = [[[UIView alloc] initWithFrame:CGRectMake(10, 10, 100, 30)] autorelease];
view.backgroundColor = [UIColor redColor];
return view;
} else {
return tableView.tableHeaderView;
}
}Рама viewForHeaderInSection всегда одинаковый размер
Это моя реализация viewForHeaderInSection но независимо от того кадра я делаю это всегда показывает мне ту же красную рамку. Вы видите какие-либо проблемы с моим кодом?
Изображение:
UPDATE:
Mhm теперь мой красный блок выше, но мой первый tableHeader теперь как-то скрыто. Первый был реализован с помощью titleForHeaderInSection. Я думал, что я просто реализовать высоту высоты tableHeader, но это не работает
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
if(section == 1)
return 30;
else
return tableView.tableHeaderView.frame.size.height;
}
thx, вы знаете, почему они не принимают высоту rame? не понимаю, почему мне нужно установить высоту в дополнительном методе делегата ... – gabac
Я не знаю, почему Apple сделала это так. Это немного глупо. Но я думаю, что они предполагали, что рамка заголовка всегда * охватывает всю ширину представления таблицы. Таким образом, единственная переменная размера, оставшаяся до беспорядка, - это высота. –
thx о намеке на автореферат. Но теперь у меня другая проблема, может быть, ты поможешь мне в другой раз? – gabac