ScrollView внутри UIStackView

Вот мой взгляд на иерархию

- UIStackView --- UIScrollView - UIImageView

Распределение StackView установлено на .FillProportionally но это не работает, так как UIScrollView не имеет собственного размера контента.

Поэтому мой вопрос заключается в том, что, поскольку UIIMageView имеет собственный размер контента, я могу как-то передать этот размер контента в UIScrollView, чтобы StackView мог показать правильный размер для представления.

Я уже пытался установить contentSize scrollView на основе width а также height из UIImageView но, похоже, тоже не работает.

Я также не уверен, где установить ограничение, если это альтернативный подход, мне нужно иметь динамический размер для ScrollView на основе contentSize ImageView, так что фиксированное ограничение тоже не поможет.

Я должен также указать причину ImageView как подвид scrollView должен быть в состоянии изменить размер ImageView внутри StackView

1 ответ

Решение

Я отвечаю на свой вопрос

Вы должны переопределить intrinsicContentSize собственностью UIScrollView

В этом случае

override func intrinsicContentSize() -> CGSize {
    if let image = imageView.image {
        return CGSizeMake(image.size.width, image.size.height)
    }
    return CGSizeMake(0, 0)
}
Другие вопросы по тегам