2014-10-19 3 views
2

Я создал горизонтальную прокрутку UIScrollView, которая содержит UIButton s. Я хочу, чтобы UIButton s заполнил высоту UIScrollView, поэтому я настроил автоматическую компоновку кнопок: верхнее пространство и нижнее пространство установлены в Superview с константой 0. В Interface Builder отображается правильный UIScrollView размер, но кнопки на 10 пикселей слишком малы - над кнопками добавлено дополнительное дополнение. Высота прокрутки составляет 44 пикселя, высота кнопок - 34 пикселя.Удалите дополнительное нижнее дополнение из горизонтального UIScrollView

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

self.automaticallyAdjustsScrollViewInsets = false 
scrollView.contentInset = UIEdgeInsetsZero 
scrollView.scrollIndicatorInsets = UIEdgeInsetsZero 
scrollView.contentOffset = CGPointMake(0, 0) 

EDIT: Он не должен быть связан с сохранением пространства для полосы прокрутки. Высота просмотра прокрутки равна высоте другой кнопки. Когда я изменяю высоту этой кнопки, чтобы изменить высоту просмотра прокрутки, увеличивается количество интервалов между дном. Кнопки всегда высотой 34 дюйма.

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

Как можно удалить это дополнение, чтобы кнопки были точной высотой высоты прокрутки?

Interface Builder:
enter image description here

Запуск приложения:
enter image description here
(я временно unhid полосу прокрутки, чтобы показать его здесь)
мне нужно белую кнопку, чтобы растянуть по высоте, чтобы прикрыть серая область под ним.

+0

Всегда ли разница в 10 пунктов, независимо от высоты прокрутки? – hlfcoding

+0

@hlfcoding Высота просмотра прокрутки равна высоте другой кнопки. Когда я изменяю высоту этой кнопки, чтобы изменить высоту просмотра прокрутки, увеличивается количество интервалов! Кнопки всегда высотой 34 дюйма. Таким образом, это не связано с пространством, сохраненным для полосы прокрутки. Будет обновлен вопрос. – Joey

ответ

0

Я решил. Я просто должен был указать высоту первой кнопки равной высоте просмотра прокрутки, сохраняя верхние и нижние ограничения. Это должно было обновить размер содержимого прокрутки, потому что другие кнопки, которые были установлены только для ограничения сверху и снизу, были расширены, чтобы заполнить пространство, в котором это дополнение ранее существовало. В интерфейсе Builder нет предупреждений или ошибок и отображается как ожидается на моем устройстве.

+0

http://stackoverflow.com/questions/24691614/why-is-uiscrollview-leaving-space-on-top-and-does-not-scroll-to-the-bottom –

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