Разделитель UITableView появляется в середине ячейки - PullRequest
0 голосов
/ 28 января 2019

Иногда мой разделитель табличных ячеек появляется в середине ячейки.Я искал и нашел одно решение, которое я могу установить SeparatorStyle как none и установить свой пользовательский разделитель в нижней части ячейки, но я не хочу этого делать.

Я хочу знать причину, почему она появляется толькоиногда.Есть ли другие решения, кроме этого?Я нашел это , но без помощи.Снимок экрана:

image

Редактировать

Я искал в Интернете и перепробовал все доступные решения, но он не работает.

Пробовал и этот код ниже:

upNextTableView.estimatedRowHeight = 44
upNextTableView.rowHeight = UITableView.automaticDimension

Ответы [ 3 ]

0 голосов
/ 28 января 2019

Это может произойти, если вы используете autolayout и внедрили метод делегата heightForRowAt, и этот метод возвращает значение, которое не соответствует фактической высоте ячейки.

0 голосов
/ 28 января 2019

Разделитель не может появляться в середине ячейки, это просто невозможно.

Но есть вероятность, что содержимое вашей ячейки больше, чем сама ячейка, и оно перекрывает следующую ячейку.

Убедитесь, что вы правильно установили все ограничения.Если ячейка должна иметь динамическую высоту, обязательно укажите ее в tableView. вот полезная ссылка Или просто установите clipToBounds = true для ячейки ...

0 голосов
/ 28 января 2019

Swift

добавьте эти две строки кода в метод viewDidLoad () вашего контроллера представления таблицы:

tableView.layoutMargins = UIEdgeInsets.zero
tableView.separatorInset = UIEdgeInsets.zero

Теперь найдите ваш метод cellForRowAt и добавьте его:

cell.layoutMargins = UIEdgeInsets.zero
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...