2012-03-09 37 views
2

我在iOS 5中有一个选项卡,并希望针对所选状态和未选状态为TabBarButton创建图像。下面是代码:无法自定义iOS5中的标签栏

BOOL isIOS5 = [[[UIDevice currentDevice] systemVersion] floatValue] >= 5.0; 

    if(isIOS5) 
    { 
     //[tabBarController.tabBar setBackgroundImage:[UIImage imageNamed:@"Tab-bg"]]; 
     // [tabBarController.tabBar setSelectionIndicatorImage:[UIImage imageNamed:@"Cell-bg"]]; 

     [[tabBarController.tabBar.items objectAtIndex:0] setFinishedSelectedImage:[UIImage imageNamed:@"list-menu-selected"] withFinishedUnselectedImage:[UIImage imageNamed:@"list-menu"]]; 
     [[tabBarController.tabBar.items objectAtIndex:1] setFinishedSelectedImage:[UIImage imageNamed:@"gallery-menu-selected"] withFinishedUnselectedImage:[UIImage imageNamed:@"gallery-menu"]]; 
     [[tabBarController.tabBar.items objectAtIndex:2] setFinishedSelectedImage:[UIImage imageNamed:@"map-menu-selected"] withFinishedUnselectedImage:[UIImage imageNamed:@"map-menu"]]; 
     [[tabBarController.tabBar.items objectAtIndex:3] setFinishedSelectedImage:[UIImage imageNamed:@"submit-menu-selected"] withFinishedUnselectedImage:[UIImage imageNamed:@"submit-menu"]]; 
     [[tabBarController.tabBar.items objectAtIndex:4] setFinishedSelectedImage:[UIImage imageNamed:@"search-menu-selected"] withFinishedUnselectedImage:[UIImage imageNamed:@"search-menu"]]; 
    } 

即图像的非Retina显示屏44px高度,他们应该是足够的,以填补空间

的问题是,dont't将图像从顶部至底部:在tabbar的底部还有一些空间没有填充。有没有人有过这个问题?

回答

0

如果您已经在检查特定情况(如iOS 5),可能最容易的方法就是创建与该栏的精确像素高度相匹配的图像。或者,您可以查看可以在tabBar.item上设置的属性。

+1

不44px标签栏的高度? – Alex 2012-03-09 14:34:45

+0

我认为它实际上根据它的版本而不同(至少我记得,从某处)。您可以通过询问项目的边界/框架来获取属性。 – 2012-03-09 19:49:12