Я создаю свой пользовательский интерфейс полностью в коде и используя масонство, чтобы ограничить просмотр содержимого содержимого ячейки до соответствующей высоты. Я использую
[cell.contentView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize].height
на iOS 7 для высоты строки, в то время как iOS 8 обрабатывает ее автоматически.
Все выглядит так, как должно быть на экране, но в консоли я получаю сообщения с предупреждениями о конфликтующих ограничениях, которые, по-видимому, вызваны неузнанным и ненужным ограничением высоты в представлении содержимого ячейки (например, <NSLayoutConstraint UITableViewCellContentView.height == 44>
).
В iOS 8 я устанавливаю представление таблицы rowHeight
как UITableViewAutomaticDimension
(эффективно -1
), но все же я получаю это ограничение. Я только добавляю ограничения между представлением контента и его собственными подзонами, поэтому никаких ограничений между представлением содержимого и самой ячейкой.
Любая идея, из которой вытекает это ограничение и как его уйти?
Изменить: Теперь я действительно нашел "решение" для сортировки - изначально установка рамки представления контента на что-то смешное, например CGRectMake(0, 0, 99999, 99999)
, перед добавлением подсмотров или ограничений, похоже, делает предупреждения далеко. Но это не совсем пахнет, как правильный способ сделать это, так может ли кто-нибудь сказать о лучшем подходе?