iOS 5 custom tab bar image vertical alignment

ios, ios5, iphone

Solution

It turns out that you should always have text inside a tabitem. The space was created by blank text.

Problem

I'm getting some odd behaviour with my custom tab bar. The images seem to be aligned incorrectly. Here is a screenshot (I have removed my own tab bar background to highlight my problem): Here is the code I'm using to set the images for each state: ``` self.tabBarController = [[[UITabBarController alloc] init] autorelease]; self.tabBarController.viewControllers = [NSArray arrayWithObjects:homeNavController, whatsOnNavController, mapNavController, infoNavController, nil]; self.tabBarController.delegate = self; // For iOS 5 only - custom tabs if ([self.tabBarController.tabBar respondsToSelector:@selector(selectedImageTintColor)]) { // Set the background images //[[UITabBar appearance] setBackgroundImage: [UIImage imageNamed:@"nav_bg.png"]]; [[UITabBar appearance] setSelectionIndicatorImage:[UIImage imageNamed:@"nav_over.png"]]; [homeNavController.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"nav_home_over"] withFinishedUnselectedImage:[UIImage imageNamed:@"nav_home"]]; [whatsOnNavController.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"nav_whats_on_over"] withFinishedUnselectedImage:[UIImage imageNamed:@"nav_whats_on"]]; [mapNavController.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"nav_map_over"] withFinishedUnselectedImage:[UIImage imageNamed:@"nav_map"]]; [infoNavController.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"nav_info_over"] withFinishedUnselectedImage:[UIImage imageNamed:@"nav_info"]]; } ``` All of my replacement tab images are correctly sized (49 pixels high and 80 pixels wide for the non-retina versions). What could be causing this odd behaviour? --- Update --- Here is an updated screenshot with the background in place:

Original source

Related problems