Как я могу удалить или изменить UIEdgeInset этих двух UITableViewCellSeparators?

У меня есть этот UITableViewController, и я хотел изменить вставки краев разделителей. Мне удалось изменить их между ячейками, но две линии, показанные на рисунке ниже, не меняются.

Верхняя строка - это строка чуть ниже представления заголовка раздела, а другая - это (я полагаю) строка чуть выше представления нижнего колонтитула раздела, но я не добавил и не изменил последний.

Спасибо заранеевведите описание изображения здесь

1 ответ

Решение

Вот что вы получаете за использование сгруппированных tableView стиль.
В любом случае... так как кажется, что вы используете -viewForHeader:, вы можете легко переключиться на равнину tableView стиль.

Это можно сделать через IB:

Стиль tableView

или же...
если бы вы создали tableView программно то что-то вроде:

UITableView *myTableView = [[UITableView alloc] initWithFrame:someRect 
                                                        style:UITableViewStylePlain];

ПРИМЕЧАНИЕ. Переключение на простой стиль заполнит любое дополнительное пространство разделителями, как если бы были пустые ячейки.
Это легко исправить, добавив следующую строку в -viewDidLoad... или где угодно:

[self.tableView setTableFooterView:[[UIView alloc] initWithFrame:CGRectZero]];

Сейчас...
Если вы жалуетесь, что заголовок раздела не перемещается вместе со строками, то, к счастью, так как кажется, что у вас есть только один раздел, вы можете сделать заголовок раздела, tableView заголовок вместо.

В основном, не используйте -viewForHeaderInSection: или же -titleForHeaderInSection: и вместо этого есть это в вашем -viewDidLoad

[self.tableView setTableHeaderView:theHeaderView];

Но...
Если у вас есть несколько заголовков разделов и вы просто ненавидите ощущение заголовков разделов, плавающих над ячейками, то вам не повезло, и вам придется придерживаться сгруппированных заголовков. tableView стиль.

Другие вопросы по тегам