Есть ли способ удалить разделительную линию из UITableView?
Я ищу способ полностью удалить строку разделителя в UITableView, когда в обычном режиме. Это делается автоматически в сгруппированном виде, но это также изменяет размеры таблицы таким образом, который трудно измерить. Я установил цвет линии сепаратора colorClear. Но это не полностью решает проблему.
Поскольку я пытаюсь создать пользовательский фоновый вид в ячейках, и я хочу, чтобы ячейки были бесшовными, одна пиксельная линия, которая остается между ними, вызывает у меня проблемы. Есть ли более элегантное обходное решение, затем сгруппированное представление, а затем растягивание?
- Потяните, чтобы обновить UITableView без UITableViewController
- захват себя в этом блоке, вероятно, приведет к циклу сохранения
- NULL против нуля в Objective-C
- UIImage от CALayer - iPhone SDK
- Полноэкранный UIView со строкой состояния и наложением панели навигации наверху
- Как добавить userInfo в UIAlertView?
- Пейзажный режим ТОЛЬКО для iPhone или iPad
- Плохой URL-адрес при запросе с помощью NSURL
- XCode 4 зависает при «Присоединении к (имя приложения)»
- Как запустить UITableView на последней ячейке?
- iOS: конвертировать UTC NSDate в локальный часовой пояс
- фильтрация NSArray в новый NSArray в объективе-c
- Как использовать NSTimer?
Вы можете сделать это с помощью свойства UITableView
separatorStyle
. Убедитесь, что свойство установлено в UITableViewCellSeparatorStyleNone
и вы настроены.
Objective-C
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
В Swift (до 3)
tableView.separatorStyle = .None
В Swift 3
tableView.separatorStyle = .none
- (void)viewDidLoad { [super viewDidLoad]; [self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone]; }
Вы можете сделать это и в редакторе раскадровки / xib. Просто установите Сеператора на нет.
После выполнения других ответов у меня все еще была темно-серая линия. Мне пришлось добавить следующие две строки, чтобы сделать все «невидимым» в терминах строк строк между ячейками.
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone; self.tableView.separatorColor = [UIColor clearColor];
В Свифт:
tableView.separatorStyle = .None
В интерфейсе Builder установите разделитель таблиц таблиц «Нет»
и те линии разделителя, которые показаны после последней ячейки, могут быть удалены с помощью следующего подхода. Наилучший подход – назначить Empty View на tableView FooterView в viewDidLoad
self.tableView.tableFooterView = UIView ()
Есть ошибка iOS 9 beta 4: линия разделителя появляется между UITableViewCell
s, даже если вы устанавливаете separatorStyle
в UITableViewCellSeparatorStyleNone
из раскадровки. Чтобы обойти это, вы должны установить его из кода, потому что на данный момент появляется ошибка из раскадровки. Надеюсь, они исправит это в будущей бета-версии.
Вот код для его установки:
[self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone];
В методе ViewDidLoad вам необходимо написать эту строку.
tableViews.separatorStyle = UITableViewCellSeparatorStyleNone;
Это рабочий код.
В вашем viewDidLoad
:
self.tableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero]; if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) { [self.tableView setSeparatorInset:UIEdgeInsetsZero]; }