2015-03-18 3 views
0

У меня есть UIScrollview и представление, которое содержит разные объекты. Нечто подобное:Отредактируйте subview uiscrollview в полноэкранном режиме

View 
UiScrollView 
    View -ContentView- 
    -Button 
    -Label 
    -... 
    -... 

В этом contentView, я установлен сверху, снизу, слева и правое поле до 0 (конечно от Scrollview который является SuperView); Я установил также выравнивание по горизонтали и по вертикали.

И затем я добавляю все свое представление в этом contentView и contentSize прокрутки.

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

Это прекрасно работает, проблема заключается в том, что представление ContentView не обновляет его размер, отображается, но его объекты не работают, и его фон просто отображается на экране.

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

enter image description here

Любая идея, как я могу решить эту проблему?

Спасибо!

+0

У вас есть ограничения между кнопками и между кнопкой и contentView? Вы не должны устанавливать высоту scrollView в коде, это должно определяться ограничениями –

+0

Когда вы устанавливаете scrollView.contentSize, можете ли вы также установить размер содержимого контента? –

ответ

1

Это, похоже, распространенное непонимание автоматического макета в UIScrollView. Надеюсь, вы сначала посмотрите на этот документ.

https://developer.apple.com/library/ios/technotes/tn2154/_index.html

Проще говоря, изменение contentSize из UIScrollView НЕ изменяет размер вашего contentView. Вместо этого, если вы хотите использовать автоматический макет там, это ограничения contentView, которые определяют contentSize для UIScrollView.

У вас есть два варианта. Первый вариант заключается в том, чтобы преобразовать контентViewViewAutoresizingMaskIntoConstraints в NO и изменить кадр contentView с тем же размером, что и contentSize, когда вы меняете contentSize для UIScrollView. Другой вариант - добавить ограничения ширины и высоты в contentView. Это определит contentSize для UIScrollView.

Смежные вопросы