Я взял обычный UITabBar
и изменил его фоновое изображение на пользовательское, которое имеет меньшую высоту, поэтому я изменил высоту
для кадр
.
Сначала я получил пустое место под панелью вкладок. поэтому я также изменил происхождение
кадра . Но теперь над панелью вкладок появилось пустое пространство, и вот результат:
А это код, объявляющий панель вкладок в AppDelegate:
self.tabContoller = [[UITabBarController alloc] init];
//customizing the tabbar
UIImage * tabBackgroundImage = [UIImage imageNamed:@"tabBarBg.png"];
self.tabContoller.tabBar.backgroundColor = [UIColor colorWithRed:245.f/255.f green:245.f/255.f blue:245.f/255.f alpha:255.f/255.f];
self.tabContoller.tabBar.backgroundImage = tabBackgroundImage;
//setting the tabbar height to the correct height of the image
CGRect tabR = self.tabContoller.tabBar.frame;
CGFloat diff = tabR.size.height - tabBackgroundImage.size.height;
tabR.size.height = tabBackgroundImage.size.height;
tabR.origin.y += diff;
self.tabContoller.tabBar.frame = tabR;
Думаю, проблема в том, что ViewController
рисуют себя над постоянным пространством, которое является высотой обычной панели вкладок. Есть ли способ его изменить?