iOS 5中的UITabBar高度

有了iOS 5中新的自定义API,是否有可能增加UITabBar的高度? 如果不是,如果我想要iOS 5的话,有什么开源的select? 谢谢

我会build议BCTabBarController 。 我在我的一个项目中使用它,它很好。 不过,你仍然需要自定义它。

我自定义UITabBarController的tabbar的方法是先定制UITabBarController本身。

UITabBarcontroller里面有两个子视图。 一个UITransitionView和一个UITabBar。 UITransitionView是放置视图控制器的屏幕上半部分的区域。

为了自定义UITabbar的高度,您还需要编辑UITransitionView的框架。 所以,比如说如果你想改变高度,你可以做;

[[tabbarController.view.subviews objectAtIndex:0] setFrame:CGRectMake(0, 0, 320, 440)]; [tabbarController.tabBar setFrame:CGRectMake(0, 440, 320, 50)]; 

这将创build一个50像素高度的标签栏,(默认情况下是48像素)

你可以编写一个UItabbar的类别

这里是代码:

.h文件:

 #import <UIKit/UIKit.h> @interface UITabBar (NewSize) - (CGSize)sizeThatFits:(CGSize)size; @end 

.m文件:

 #import "UITabBar+NewSize.h" @implementation UITabBar (NewSize) - (CGSize)sizeThatFits:(CGSize)size { CGSize newSize = CGSizeMake(size.width,44); return newSize; } @end 

接着

 #import "UITabBar+NewSize.h" self.tabBarController = [[UITabBarController alloc] init]; [self.tabBarController.tabBar sizeThatFits:CGSizeMake(320, 44)]; self.tabBarController.tabBar.shadowImage = [[UIImage alloc]init]; //delete the default tabbar shadow! 

你不能用UITabBar做到这一点。 我build议你创build你自己的UIToolBar并使它看起来像一个tabBar,你可以添加UIButtons ,并使它们看起来像tabBarItems

它会显示为一个tabBar并为您提供了大量的自定义空间,您还可以添加超过5个选项卡,并在button之间实现“滚动”animation。 🙂

UIAppearance代理是不可能的

我build议这样做的方法是在UIViewController中使用容器ViewController方法(在实现容器视图控制器的标题下)。 苹果的文档基本上告诉你如何推出自己的。