Почему Scrollview и дочерний вид иногда несовместимы

У меня есть прокрутка и дочерний вид.

Размер дочернего представления динамически увеличивается в зависимости от его содержимого.

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

например, если я устанавливаю дочерний вид 320 пикселей.. Я вижу, что размер дочернего вида стал больше 320 пикселей.. иногда он равен 500 пикселям (как размер содержимого прокрутки, так и высота дочернего вида) или что-то... иногда его 320 пикселей как я установил.

это кажется мне смешным

это как-то связано с xamarin.ios? или я что то не так делаю?

Я меняю высоту просмотра на...

Viewwilllayoutsubview, и я изменяю высоту вида перед вызовом this.View.LayoutIfNeeded

может кто-нибудь объяснить мне, что я делаю не так?

1 ответ

Решение

UIScrollView должен заполнить вид, я добавил изображение для ограничений UIScrollView Ограничения UIScrollView

и как вы сейчас, если высота дочерних представлений больше, чем UIScrollView начинает прокручивать, но

  1. Внутренние ограничения Childview должны выглядеть следующим образом. (высота может увеличиваться динамически, как вы сказали)

введите описание изображения здесь

  1. в вашем ViewController вы должны пропинговать вас UIScrollView и обновить его размер контента.

public override void ViewDidLayoutSubviews () {

base.ViewDidLayoutSubviews(); 
ScrlView.ContentSize = VwContent.Frame.Size;

}

Другие вопросы по тегам