2012-04-29 5 views
1

Я пытаюсь установить автоматическое изменение размера в подклассе навигационной панели и сегментированном элементе управления. Мне нужно сделать это в коде, а не в интерфейсе.iPhone Set Auto Resize

Мне нужен код, эквивалентный этой настройке интерфейса.

enter image description here

Edit:

Я попытался это, но он не работает.

[self.segmentedControl setAutoresizingMask: UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleLeftMargin]; 
+0

@JacquesCousteau проверить изменения. Обратите внимание, что это не сработало. – Vikings

ответ

4

В View Programming Guide примечания:

Гибкая ширина и высота константы [UIViewAutoresizingFlexibleHeight и UIViewAutoresizingFlexibleWidth] из предыдущей фигуры имеют такое же поведение, как ширина и размер индикаторы в Autosizing контролирует схему. Однако поведение и использование маржинальных показателей эффективно отменяется. В Interface Builder наличие индикатора маржи означает, что маржа имеет фиксированный размер, а отсутствие индикатора означает, что маржа имеет гибкий размер.

Вы хотите снизу, слева и справа по быть фиксированной (который по умолчанию), а маржа топ быть гибким. Попробуйте следующее:

[self.segmentedControl setAutoresizingMask: UIViewAutoresizingFlexibleTopMargin]; 
+0

Спасибо, что решил мою проблему – Vikings

+0

Рад, что я мог помочь. –