2015-01-04 5 views
1

Привет, я хочу добавить прокрутку к контроллеру моего представления, я перетащил UIScrollView на холст, это необходимый размер (228 * 128). Я хочу, чтобы этот прокрутка просмотрел вид размера (576 * 128), т. Е. Двойной ширины. Я не уверен, как это сделать. Сначала я рисую (576 * 128) вид на отдельный файл xib? Как бы мне связать все это после? Ниже приведена моя установка. Должен ли я создавать пользовательский класс для UIView, который содержит контент, а init - это мой контроллер представления? Просто не уверен, как это сделать. Благодаря!Ввод UIScrollview в viewcontroller (раскадровка)

enter image description here

обновленный образ ниже .........

enter image description here

+0

Взгляните на этот ответ, он может помочь http://stackoverflow.com/questions/16889123/how-to-add-objects-to-a-uiscrollview-that-extend-beyond- uiview-из-раскадровка/16889377 # 16889377 –

ответ

1

Вы можете полностью разместить это в Интерфейс Builder.

  1. Начать с нового ViewController. В Размер инспектор справа, установите Имитированный размер в Freeform. Установите ширину до 640 и высотой до 600. Это даст вам достаточно широкий ViewController, чтобы увидеть полную ширину вашего прокрутки (только для целей макета).

    Freeform Size

  2. влачить Scrollview. Добавьте ограничения, чтобы центрировать его в представлении и ограничить его в нижней части вашего ViewController. Ограничьте его ширину до 576 и ее высотой до 128. Мы исправим ширину на более позднем этапе.

  3. Добавить contentView в scrollView, перетащив UIView и отбросив его в scrollView. Закрепите его влево, вправо, вправо и в нижней части прокрутки и ограничьте его ширину до 576 и высотой до 128. Для этого нажмите на значок пиктограммы внизу экрана | - [] - |, снимите отметку Constrain to margins, включите все четыре оранжевые I-балки (стойки), установите их константы на ноль, установите флажки рядом с шириной и высотой и установите их значения 576 и 128 соответственно.Наконец, нажмите на Добавить 6 ограничений.

    Adding 6 constraints

  4. Сделайте фон из contentView желтый, так что вы можете увидеть его.

  5. Добавить контент в ваш контентПросмотреть. Я добавил три ярлыка «Левая сторона», «Средний» и «Правая сторона». layout scroll view

  6. Теперь давайте сделаем scrollView нужного размера. Нажмите на ограничение ширины scrollView и сделайте его Placeholder, нажав на Удалить во время сборки checkbox.

    Placeholder

  7. Добавьте другое ограничение ширины к Scrollview. Установите его равным 228 и установите его приоритет 750. При этом более низком приоритете у вас не будет конфликтов в Interface Builder, но когда вы создадите другой, он будет оставлен, и это будет сдерживать ваш scrollView до ширины 228.

    Priority 750

  8. На данный момент, ваш Outline документ будет выглядеть следующим образом показывая все ограничения:

    Document outline showing constraints

  9. Теперь строить, и ваш Scrollview будет прокручиваться! showScroll

+0

очень подробный ответ большое спасибо! – Kex

+0

Просто попробовал это, в моем XCODE флажок «Удалить во время выполнения» отсутствует. У меня есть свойство Intrinsic size, но я могу изменить на «placeholder». Это то же самое? Последовал ваш гид, и когда я запускаю программу, я не вижу прокрутки на экране. Просто все белые. – Kex

+0

Какая версия Xcode у вас есть? Вы должны использовать последнюю версию в App Store. Вы работаете с включенными или отключенными классами классов? – vacawama

1

Link ваш Scrollview к розетке, а затем сделать это:

Objective-C:

[scrollView setContentSize:CGSizeMake(576, 128)]; 

Свифт:

scrollView.contentSize = CGSize(width:576, height: 128) 

После этого, вы можете добавить элементы к вашему Scrollview отдельно, или вы можете добавить их в UIView, а затем добавить его в свой Scrollview, выполнив:

Objective-C:

[scrollView addSubview:view]; 

Swift:

scrollView.addSubview(view); 

(Кстати, вы говорите 'двойной ширины'. 228 * 2 не 576px, а 456px)

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