У меня есть UITableViewCell с встроенным UIStackView. Все работает и прекрасно выглядит на телефоне и iPad. Тем не менее, я получаю много странных ошибок в StoryBoard, и я не знаю, могу ли я игнорировать их или нет. Обычно я ненавижу игнорировать предупреждения. Но все в порядке? Моя ячейка таблицы устанавливаются следующим образом:Y Недостаток в вертикальном стеке
UITableViewCell
- Content View
-- View (named outerView)
--- View (named dateView for top banner color)
--- UIStackView (vertical, named mainStackView, pinned to neighbors)
---- UIButton (A)
---- UIView (B)
---- UIStackView (C, horizontal)
---- UIStackView (D, horizontal)
---- UILabel (E)
---- UIButton (F)
Все под mainStackView (буквы A-F) показывает, что все ошибки в раскадровке, что они «нужны ограничения для: положения Y или высот». Однако в Apple documentation говорится, что они будут обрабатывать все ограничения и вертикальное выравнивание, если UIStackView имеет вертикальную ориентацию. Как я уже сказал, он работает отлично, и упорядоченные просмотры могут быть свернуты/скрыты, и никаких других предупреждений нет. Мне просто не нравится отсылать код, пронизанный предупреждениями. Что я могу сделать, чтобы исправить это, или это известная проблема?
ОБНОВЛЕНИЕ: вот MCVE, как указано в комментарии ниже. Нажмите here и разархивируйте папку, чтобы получить проект «Голые кости», который будет работать только в Interface Builder.
Я не могу воспроизвести вашу проблему на основе того, что вы поделили с нами. Если мы не сможем воспроизвести вашу проблему, трудно решить проблему. Возможно, вы можете создать [MCVE] (http://stackoverflow.com/help/mcve), а именно начать с пустого проекта, а затем добавить таблицу и ячейку таблицы, которая воспроизводит предупреждение, которое вы описываете. Тогда вы можете поделиться этим проектом с нами. – Rob
@Rob - я обновил его, включив MCVE –
Получаете ли вы предупреждения о компиляции или предупреждения во время выполнения? В Xcode 8.1 (8B62) у меня нет предупреждений о компиляции. Когда я попытался запустить это, очевидно, что у вас не было контроллера вида или класса ячейки, но когда я добавил их, он работал нормально, хотя для предотвращения предупреждений во время выполнения я поместил следующие строки в 'viewDidLoad'' Подкласс UITableViewController: 'self.tableView.rowHeight = UITableViewAutomaticDimension; self.tableView.estimatedRowHeight = 222; '. – Rob