Y-координата подвид UITabBar - PullRequest
0 голосов
/ 08 июня 2011

Я создаю пользовательский подкласс UIViewController (без кончика), который помещаю в стек UINavigationController. Где-то во время инициализации моего подкласса UIViewController (loadView? viewDidLoad? init?) Я хочу добавить подвид UITabBar в конец представления. Проблема в том, чтобы выяснить Y-координату. Насколько я могу судить, размер вида изменяется после loadView, viewDidLoad и init, поэтому я не могу получить измененную высоту для вычисления Y-координаты UITabBar.

Как правильно определить высоту вмещающего вида, чтобы я мог закрепить UITabBar внизу?

1 Ответ

1 голос
/ 08 июня 2011

Что вам нужно сделать, это установить UITabBar в нижней части окна, а затем сказать ему, чтобы он оставался там , если границы суперпредставления изменятся.

Это нене слишком сложно.Например, в viewDidLoad выделите / инициализируйте панель вкладок как обычно и расположите ее следующим образом:

tabBar.frame = CGRectMake(self.view.frame.size.height-tabBar.frame.size.height, 0,
                          tabBar.frame.size.height, tabBar.frame.size.height);
[self.view addSubview:tabBar];

..., которая добавит панель в нижнюю часть представления.

Пока все хорошо: ваша проблема в том, что когда супервизор меняет высоту, панель вкладок не остается заблокированной в нижней части.Чтобы исправить это, мы установили маску авторазмера:

tabBar.autoresizingMask = UIViewAutoresizingMaskTopMargin;

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...