Вопрос в том, что самый лучший способ отображения разделителя в последней ячейке таблицы/раздела.
В основном это то, чем я занимаюсь.
Это из приложения для родной музыки, что заставляет меня думать, что его можно достичь только с помощью UITableView
, они не будут использовать какой-либо частный API для разделителей ячеек, правильно?
Я знаю, что вы можете уйти, не используя фактические разделители, но добавляя одну пиксельную линию в нижней части ячейки. Но я не поклонник этого подхода, потому что
- Когда ячейка выбрана/выделена разделителем и, разделитель предыдущей ячейки автоматически скрыт (см. второй снимок экрана с "Вы должны быть сумасшедшими" выбраны). А это то, что я хочу, чтобы UITableView обрабатывал вместо того, чтобы делать сам, если я использую однопиксельную линию (что особенно удобно, когда разделители ячеек не распространяют все путь к краю представления таблицы, разделители и выбранный фон ячейки не выглядят хорошо вместе).
- Я бы хотел, чтобы мои ячейки были как можно более плоскими для прокрутки.
Также есть что-то в ссылке UITableView, которая заставляет меня думать, что есть простой способ получить то, что я хочу:
В iOS 7 и более поздних версиях разделители ячеек не распространяются полностью на край представления таблицы. Это свойство устанавливает стандартную вставку для всех ячейки в таблице, так же как rowHeight задает высоту по умолчанию для клетки. Он также используется для управления "дополнительными" разделителями, нарисованными на нижняя часть таблиц с обычным стилем.
Кто-нибудь знает, как именно использовать эти "дополнительные" разделители, рисуемые внизу таблиц обычного стиля? Потому что это именно то, что мне нужно.
Я думал, что присваивание separatorInset
UITableView
, а не UITableViewCell
выполнит трюк, но это не так, последняя ячейка все еще не имеет разделителя.
В данный момент я вижу только один вариант: иметь пользовательский раздел нижнего колонтитула для имитации разделителя для последней ячейки. И это плохо, особенно если вы хотите иметь фактический нижний колонтитул раздела, используя метод tableView:titleForFooterInSection:
.