2015-07-12 5 views
0

Я пытаюсь разрешить высоту подзаголовка (белый ящик внутри представления. Быстрый файл контроллера просмотра - это отдельный файл XIB) в зависимости от количества содержимого в нем. Как мне это сделать?Динамически изменяйте высоту UIView

Imgur

Это то, что я до сих пор для него:

@IBOutlet weak var myScrollView: UIScrollView! 
@IBOutlet weak var myContentView: UIView! 

override func viewDidLayoutSubviews() 
{ 
    let scrollViewBounds = myScrollView.bounds 
    let containerViewBounds = //I am not sure how to do the rest 


} 

ответ

2

Самый лучший способ для достижения этой цели является использование autolayout. У вас есть большой tutorail здесь:

http://www.raywenderlich.com/50317/beginning-auto-layout-tutorial-in-ios-7-part-1

Если вы не хотите использовать его, установить эталонный для зрения внутри контроллера для просмотра этой точки зрения, а также использовать различные функции для расчета высоты. Существует несколько способов для меток (Adjust UILabel height to text), текстовое поле (How to set UITextField height?) и т. Д.

+0

Спасибо за статью! к сожалению, он находится в объективе c, но я быстро кодирую. Подраздел выше будет содержать либо много информации, либо немного в зависимости от пользователя. Возникает ли автомасштабирование с этим? –

+0

Да, вы можете использовать его для всего, что связано с пользовательским интерфейсом. Если вам нужны некоторые из функций, которые написаны в Objective-c, просто дайте мне знать, и я буду переписывать их быстро. Это не такая большая разница :) – Miknash

+0

Чувак, это здорово и такая большая помощь! И да, они довольно близки в письменной форме (хотя я думаю, что Swift выглядит гораздо привлекательнее:)) Я собираюсь взглянуть на него. В представлении subview будут отображаться различные типы представлений коллекции (в зависимости от того, какой из сегментированных вариантов выбора выбран). Размер самих ячеек не изменится, но число их будет. –

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