Как добавить UIScrollView в представление на основе XIB - PullRequest
0 голосов
/ 16 марта 2020

Я пытаюсь создать UIView.

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

Я создал xib и добавил вид прокрутки с якорями 0 сверху, слева, снизу и справа.

Я получаю сообщение об ошибке, что высота и ширина двусмысленно однако.

enter image description here

Исторически я всегда строил эти представления в коде, используя что-то такое простое, как

...
      scrollView.topAnchor.constraint(equalTo: safeAreaLayoutGuide.topAnchor),
      scrollView.leadingAnchor.constraint(equalTo: safeAreaLayoutGuide.leadingAnchor),
      scrollView.bottomAnchor.constraint(equalTo: safeAreaLayoutGuide.bottomAnchor),
      scrollView.trailingAnchor.constraint(equalTo: safeAreaLayoutGuide.trailingAnchor),
...
      profilePictureImageView.heightAnchor.constraint(equalToConstant: 170),
      profilePictureImageView.widthAnchor.constraint(equalToConstant: 170),

      collectionView.widthAnchor.constraint(equalTo: scrollView.widthAnchor),
      collectionView.topAnchor.constraint(equalTo: profilePictureImageView.bottomAnchor, constant: 6),
      collectionView.leadingAnchor.constraint(equalTo: scrollView.leadingAnchor),
      collectionView.bottomAnchor.constraint(equalTo: scrollView.bottomAnchor, constant: -32),
      collectionView.trailingAnchor.constraint(equalTo: scrollView.trailingAnchor),

Как Я создаю полноэкранный вид прокрутки в xib?

Я видел кучу ответов, которые предполагают некоторую случайную высоту 1000, но это кажется странным, тем более что он не требует такого подхода в коде.

Мне бы хотелось, чтобы он был на всю ширину и высоту всего содержимого внутри него.

Вместо этого я попытался сделать основу xib UIScrollView, но все мое содержимое было сдавлено влево.

Ответы [ 2 ]

0 голосов
/ 16 марта 2020

Один из вариантов решения вашей проблемы - отключить Руководства по макету контента

enter image description here

См. Также: Прокручиваемый неоднозначность размера контента

0 голосов
/ 16 марта 2020

попробуйте встроить scrollview в UIView (с теми же ограничениями), или вы можете использовать StackView , встроенный в scrollView.

Здесь отличное объяснение .

...