ScrollView внутри UIStackView

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

- UIStackView --- UIScrollView - UIImageView

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

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

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

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

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


person mosn    schedule 21.07.2016    source источник


Ответы (1)


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

Вам необходимо переопределить свойство intrinsicContentSize для UIScrollView

В таком случае

override func intrinsicContentSize() -> CGSize {
    if let image = imageView.image {
        return CGSizeMake(image.size.width, image.size.height)
    }
    return CGSizeMake(0, 0)
}
person mosn    schedule 21.07.2016