Я создал пользовательский UITableViewCell в IB, но по какой-то причине, несмотря на то, что выбран одиночный параметр для разделителя, в моей таблице нет разделительных строк.
Это случилось с кем-то из вас раньше? Что дает?
Спасибо!
Я создал пользовательский UITableViewCell в IB, но по какой-то причине, несмотря на то, что выбран одиночный параметр для разделителя, в моей таблице нет разделительных строк.
Это случилось с кем-то из вас раньше? Что дает?
Спасибо!
Является ли UITableViewCell в IB, связанным с подклассом UITableViewCell, который переопределяет drawRect:
? Если это так, убедитесь, что вы вызываете супер-реализацию, как то, что рисует линию внизу. Если вы переопределяете layoutSubviews
, убедитесь, что никакие виды не скрывают нижнюю часть ячейки.
Просто голова, хотя это старый пост:
Если вы используете симулятор, а разделитель UITableView не отображается между ячейками, это может быть связано с тем, что ваш оконный масштаб слишком мал.
Измените это, перейдя в Window- > Scale- > 100%
В моем случае я забыл вызвать [super layoutSubviews] после переопределения метода layoutSubviews. Принял меня два часа, чтобы найти проблему.
в моем случае я должен установить свойство separatorStyle таблицыView
tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
Я нашел separatorStyle
в ссылка на класс UITableView.
Он говорит, что добавит separatorStyle в ячейку, возвращенную методом делегата, tableView: cellForRowAtIndex:.
Итак, я думаю, вы должны изменить свойство style в экземпляре UITableView.
Возможно, маловероятный случай, но есть и другая возможная причина.
У меня есть пользовательский UITableView
, называемый AddressBookTableView, и он включен в .XIB для одного из моих контроллеров. Я заметил, что он был добавлен как элемент UIView
с настраиваемым классом, указанным как AddressBookTableView. Я удалил этот элемент и добавил вместо него элемент UITableView
, чей класс я снова указывал как AddressBookTableView, и разделители волшебным образом снова появлялись!
Мне очень понравилось...
Убедитесь, что ваши пользовательские элементы UITableView
.XIB действительно являются настраиваемыми элементами UITableView
, которые не были переименованы в элементы UIView
.
Честно говоря, я удивлен, что единственным заметным артефактом этой ошибки было то, что разделители отсутствовали. Кроме того, UITableView все еще функционировал нормально?
Если вы программно добавляете subviews в свою ячейку, убедитесь, что вы добавили subviews
до cell.contentView, а не к ячейке
[cell.contentView addSubview:subview];
Для всех, кто видит это: Моя проблема заключалась в том, что у меня было несколько разделов, а первая ячейка в каждом разделе не имела разделителя. В моем представлении таблицы я перезаписал функцию heightForHeader (возврат 0). Удаление этой проблемы устранило проблему.