#swift #uistackview
#swift #uistackview
Вопрос:
У меня есть ViewController, который имеет UIScrollView с вертикальным UIStackView поверх него. Все работает нормально, если я добавлю UIView в stackview с ограничением высоты через конструктор интерфейсов. Например, 3 вида с высотой 600 пикселей. Если я запускаю приложение, я могу без проблем прокручивать и просматривать все три добавленных представления. Для stackview работает нормально.
Если я попытаюсь добавить представление в stackview с помощью кода с помощью addArrangedSubView, я увижу, что первое представление, которое я добавил, если я «принудительно» прокручиваю вниз, но не два других. Не имеет значения, устанавливаю ли я ограничения по высоте для добавляемых мной представлений, и не имеет значения, устанавливаю ли я intrinsicContentSize для пользовательских представлений.
Как я могу заставить вид прокрутки расширять область прокрутки при добавлении кода корыта. ?
Спасибо 🙂
Комментарии:
1. Пожалуйста, укажите ваши конкретные сегменты кода, чтобы люди могли вам лучше помочь!
2. Попробуйте обновить свой
UIScrollView
contentSize сscrollView.contentSize = CGSize(width: <your-width>, height: <your-height>)
помощью после добавления упорядоченных вложенных представлений.3. Вам нужно предоставить немного больше информации. Вы пытаетесь добавить вид прокрутки, вид стека и изображения с помощью кода? Или вы добавили свой вид прокрутки с пустым видом стека в раскадровке? Если да, то какие ограничения вы ввели для представления стека? Или у вас есть только вид прокрутки в раскадровке?
Ответ №1:
Просто предположение из-за отсутствия дополнительной информации:
Проблема может быть связана с тем, как устанавливаются ограничения между представлением прокрутки и его дочерним элементом, представлением стека.
вы должны добавить следующие ограничения:
- исправьте края вида стека (верхний, передний, задний, нижний) для просмотра прокрутки
- установите ограничение ширины между видом стека и видом прокрутки
- также установите ограничение высоты между представлением стека и видом прокрутки, установите его приоритет на низкий (250)
Для получения дополнительной информации, пожалуйста, ознакомьтесь с разделом «настройка UIStackView с автоматической компоновкой», например, здесь: https://medium.com/@pradeep_chauhan/how-to-configure-a-uiscrollview-with-auto-layout-in-interface-builder-218dcb4022d7
Если это не сработает, пожалуйста, предоставьте соответствующий код и скриншоты вашей настройки Interface Builder.