У меня проблемы с пониманием логики работы с автопоставкой - PullRequest
1 голос
/ 14 мая 2019

Вот мой репозиторий проекта:

https://github.com/alonsd/MoviesApi

Причина, по которой я привожу здесь весь проект, заключается в том, что проблемы лежат в файле .xib и не являются кодомЯ думаю, что это был бы лучший способ получить помощь в этом вопросе.

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

Невозможно одновременно удовлетворить ограничения.Возможно, по крайней мере одно из ограничений в следующем списке - это то, что вам не нужно.

Так что я искал решения для этого сайта и нашел хороший способ отладки, чтобы выяснить, что не так, я сделал расширение, которое переопределяет описание var NSLayoutDescription и распечатывает id и константудля более быстрого и лучшего понимания, в чем проблема.Таким образом, очевидно, что ошибка исчезает, как только я удаляю рост и вес из img внутри моего файла .xib, но это заставит изображение полностью исчезнуть из .xib.В чем проблема именно с тем, как я сделал свой макет?Я также попытался использовать «сброс к предлагаемым ограничениям» в моем .xib-файле, и это устраняет ошибку, но также увеличивает высоту каждой ячейки при прокрутке вверх и вниз.

И еще одна проблемаЯ сталкиваюсь - думаю, я не уверен в том, как работают ограничения.Это потому, что когда вы смотрите на мой xib-файл, вы видите большую область между изображением и правым концом ячейки, но в самом списке ничего нет, поэтому я действительно запутался в этом.

Это изображение симулятора с табличным видом -

https://imgur.com/q0RWYAd

, и это изображение моего .xib файла с пробелами, которые на самом деле не появляютсяв симуляторе -

https://imgur.com/r3vnAe6

(не смог разобраться, как их поставить прямо в пост)

Ответы [ 3 ]

1 голос
/ 14 мая 2019

1- Снимите ограничения ширины и высоты здесь

enter image description here

2- Снимите контейнерПредставьте ведущее ограничение здесь

enter image description here 3- Добавить конечное ограничение к просмотру стека

4- Добавить значение к ведущей константе просмотра стека

enter image description here

5- выберите все метки и настройте вертикальный объем содержимого на 1000

enter image description here

6 - выберите стек textContainer и установите интервал, скажем, 20

1 голос
/ 14 мая 2019

Проблема заключалась в том, что вы использовали StackView, но для stackveiws также нужны некоторые ограничения. enter image description here

enter image description here

Вотограничения, которые я использовал, чтобы получить результат, я помещаю 4 элемента в вид стека и задаю изображение шириной и высотой ведущего верха

1 голос
/ 14 мая 2019

В целом у вас должно быть 4 ограничения. У меня была такая же проблема с вами некоторое время, и для меня лучшее решение, которое работает лучше всего, это использовать процент для высоты или ширины, а затем соотношение сторон. Например, высота элемента будет 20% от вида, а затем я использую соотношение сторон для ширины и т. Д. Также не используйте stackView для всех 5 элементов. Оставьте изображение фильма вне stackView.

...