Я использую в своем приложении табличное представление, в котором строки не доходят до конца строки:
В моем дизайне мне нужно, чтобы некоторые линии доходили до упора, как на этой картинке:
Еще одна проблема, которая у меня есть, заключается в том, что я вижу последнюю строку в табличном представлении:
У меня вопрос как мне сделать некоторые линии полностью поперечными, как на 2-м рисунке и еще вопрос как мне удалить последнюю строку UITableView?
Какие-нибудь конкретные причины использовать здесь UITableView
? Почему не сочетание настраиваемых полей UITextfields и UIButton?
tableviewcontroller со статическими ячейками может работать практически со всеми экранами. Основная причина в том, что он может автоматически регулировать прокрутку (что меня беспокоит больше всего). также легко добавить константы для текстовых полей в статическую ячейку.
По желанию вы можете добавить в свою ячейку представление и использовать его в качестве разделителя.
добавить вид со светло-серым фоном и высотой 1 и добавить в верхнюю часть ячейки. настройте в каждой ячейке так, как вам нужно.
Вы можете использовать приведенный ниже код для ячеек tableview, в которых вы хотите, чтобы он касался края tableview.
cell.separatorInset = UIEdgeInsets.zero
cell.layoutMargins = UIEdgeInsets.zero
Примечание: поскольку tableview использует повторно используемые ячейки, поэтому, если вы устанавливаете separatorInset
и layoutMargins
, убедитесь, что вы устанавливаете его для всех ячеек. В противном случае повторно используемая ячейка будет иметь другую вставку разделителя, чем ожидалось. Итак, для других ячеек оставьте left = 16 в UIEdgeInsets
.
на случай сокрытия корпуса разделителя придется снова поиграться с separatorInset
cell.separatorInset = UIEdgeInsetsMake(0, 0, 0, UIScreen.main.bounds.width)
где я могу ссылаться на конкретные ячейки? я не могу подключать их регулярно
можно еще добавить способ убрать разделительную линию? (как то, что я хочу сделать в моем последнем разделе)
@ChiefMadog: Проверьте обновленный ответ, на самом деле я не прочитал ваш вопрос полностью, поэтому пропустил эту вещь. Но теперь ясно
Вы используете настраиваемую ячейку, поэтому вы можете использовать метку / представление для строки, установить ограничения начала и конца метки / представления или обновить высоту метки / представления, цвет в соответствии с вашими требованиями и установить разделитель представления таблицы Нет.
Задайте условие для последней строки таблицы в функции Table cellForRowAt и скройте метку / представление.
Вы можете изменить вставки разделителя для последней ячейки в табличном представлении, чтобы она исчезла с экрана.
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "TableviewCell", for: indexPath) as! TableviewCell
if indexPath.row == LastCount {
cell.separatorInset = UIEdgeInsets(top: 0, left: UIScreen.main.bounds.width*2, bottom: 1, right: -(UIScreen.main.bounds.width*3))
}
else
{
cell.separatorInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
}
return cell
}
чтобы удалить эту последнюю строку или все другие строки, которые вы установили tableView.tableFooter = UIView()
в cellForRowAt
строки являются разделителем uitableview?