UITableViewCell не отображается должным образом, когда он создается вручную - PullRequest
0 голосов
/ 06 февраля 2020

Я создал пользовательский UITableViewCell с использованием xib.

Пользовательская ячейка проста и состоит из UILabel, который прикреплен к 4 краям «представления содержимого» * ​​1005 * .

Я хотел бы создать экземпляр этой ячейки и добавить ее в качестве подпредставления UIStackView. Я использую следующий код для создания экземпляра ячейки

let nib = UINib(nibName: "CustomTableViewCell", bundle: nil)
let cell = nib.instantiate(withOwner: nil, options: nil).first as! CustomTableViewCell
stackView.addArrangedSubview(cell)

Когда приложение запускается, я замечаю, что размер ячейки не соответствует ожидаемому. Высота меньше ожидаемой, и метка не появляется.

Используя "иерархию представления отладки" в XCode, я наблюдаю, что некоторые ограничения были добавлены к представлению содержимого ячейки, которое вызывает эту проблему. enter image description here

Кажется, проблема связана с ограничениями UIView-Encapsulated-Layout-*. Кто-нибудь может указать, как решить эту проблему?

Примечание. Если пользовательский UITableViewCell используется в UITableView, то он выглядит как ожидалось. Эта проблема наблюдается только тогда, когда UITableViewCell создается вручную.

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