2015-02-18 2 views
10

Когда я использую this guide, чтобы создать представление, созданное в XIB, многократно используемое в раскадровке с использованием атрибута IBDesignable в моем подклассе UIView, как мне сделать он имеет фиксированный размер и имеет ли поведение изменения размера такое же представление, как UISwitch?Сделать фиксированный размер UIView, например UISwitch (с использованием IBDesignable)

С «изменением размера» я также подразумеваю при проектировании в построителе интерфейса.

ответ

6

Вы можете переопределить intrinsicContentSize() в своем подклассе UIView. Тогда вам не нужно будет устанавливать ограничения высоты и ширины в построителе интерфейса.

override func intrinsicContentSize() -> CGSize { 
    return CGSizeMake(100, 100) 
} 
+0

Просто в стороне: IB, кажется, не отображает размер правильно, если вы не поставили ограничения позиции на вид. Сначала это сбило меня с толку. –

+0

На самом деле это работает, большое спасибо –

+2

FYI: В Swift 3 Xcode показывает подпись как 'override var intrinsicContentSize: CGSize {}' –

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