UIScrollView прокручиваемый размер содержимого неоднозначность

Если вы хотите выполнить свой скрипт Python в PHP, необходимо выполнить эту команду в вашем php-скрипте:

exec('your script python.py')
449
задан Nisha Yadav 28 March 2018 в 16:17
поделиться

7 ответов

все подпредставления внутри прокрутки должны иметь ограничения, затрагивающие все края вида прокрутки, как объясняется в документации, высота и ширина вида прокрутки вычисляется автоматически по показателям подпредставлений, это означает, что вы необходимо иметь ограничения Trailing и Leading для ширины и ограничения Top и Bottom для высоты.

-2
ответ дан user3373499 28 March 2018 в 16:17
поделиться

[протестировано в XCode 7.2 и для iOS 9.2]

Что подавляло ошибки и предупреждения раскадровки для меня, так это установление внутреннего размера вида прокрутки и представления контента (в моем case, stackview) к Заполнитель . Этот параметр находится в Инспекторе размеров в Раскадровке. И это говорит - Установка внутреннего размера времени разработки влияет только на представление при редактировании в Интерфейсном Разработчике. Представление не будет иметь этот собственный размер содержимого во время выполнения.

Итак, я полагаю, мы не ошибемся, если настроим это.

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

Предупреждение о раскадровке приводило меня в бешенство, и я не хотел центрировать вещи по горизонтали или вертикали, просто чтобы подавить предупреждение.

0
ответ дан gtl_pm 28 March 2018 в 16:17
поделиться

iOS 12, Swift 4

Самый простой способ, используя autolayout:

  1. Добавить UIScrollView и прикрепить его 0,0,0,0 к суперпредставлению ( или желаемый размер)
  2. Добавьте UIView в ScrollView, прикрепите его 0,0,0,0 ко всем 4 сторонам и отцентрируйте его horizontally и vertically.
  3. В инспекторе размеров измените приоритет bottom и align center Y на 250. (для горизонтальной прокрутки измените trailing и align center X)
  4. Добавьте все необходимые вам виды в это представление. Не забудьте установить нижнее ограничение для самого нижнего вида.
31
ответ дан Rishil Patel 28 March 2018 в 16:17
поделиться

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

Для просмотра содержимого необходимо установить ограничения на ведение / завершающие / верхние / нижние пробелы для просмотра прокрутки, и это не изменит рамки просмотра контента , например: enter image description here

Конечно, вам нужно создать дополнительные ограничения для просмотра контента, так представление прокрутки может знать размер содержимого. Например, установите фиксированную высоту и центр х.

Надеюсь, это поможет.

15
ответ дан Borzh 28 March 2018 в 16:17
поделиться

См. Ниже: представление содержимого в вертикальной и горизонтальной горизонтальной проекции прокрутки. вы получили ошибку неоднозначности, всегда проверяйте, что два добавленных в представление прокрутки в вашем представлении содержимого: 1) .пространство кнопки к контейнеру. многое вы можете прокрутить после высоты или ширины просмотра контента.

enter image description here

это может помочь вам.

3
ответ дан Ravi Kumar 28 March 2018 в 16:17
поделиться

Для меня добавление contentView не сработало, как предлагалось. Более того, это создает накладные расходы из-за добавленного представления (хотя я не считаю это большой проблемой). Для меня лучше всего было просто отключить проверку неоднозначности для моего scrollView. Все хорошо выглядит, так что я думаю, что это нормально в простых случаях, таких как мой. Но имейте в виду, что если другие ограничения для вашего scrollView прервутся, Interface-Builder не будет предупреждать вас об этом больше.

enter image description here

2
ответ дан Nick Podratz 28 March 2018 в 16:17
поделиться

Xcode 11 +, Swift 5

, Если Вы задаетесь вопросом, почему все ответы больше не работают, , удостоверяется, что Вы прикрепили довольное представление (тот, который Вы вставили представление прокрутки) Удовлетворить Руководство Расположения по представлению прокрутки а НЕ Структурировать Руководство по Расположению.

края представления Content (продвижение, запаздывание, вершина, нижняя часть) не должны быть прикреплены как то, чтобы вовлекать изображение - для Структурирования Руководства по Расположению

Not like this

, но как это - для Удовлетворения Руководства по Расположению.

Select Content Layout Guide from dropdown

enter image description here

И затем большинство ответов будет работать на Вас.

самый простой подход теперь идет как это:

  1. Помещенное представление прокрутки в корневом представлении
  2. Контакт все стороны представления прокрутки к суперпредставлению
  3. Берут другой UIView (назовет это довольным представление), и поместите его в представлении прокрутки
  4. Контакт все стороны довольного представление для прокрутки Руководства по Расположению Содержания представления
  5. Контакт, представление width содержания, чтобы быть равным для прокрутки Руководства по Расположению Кадра представления
  6. Фиксирует довольное высота представления всегда, Вы хотите (я использовал просто постоянное ограничение высоты в примере ниже)

, В целом Ваша структура в самой простой реализации будет похожа на это

enter image description here

20
ответ дан 22 November 2019 в 22:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: