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方法(在实现容器视图控制器的标题下)。 苹果的文档基本上告诉你如何推出自己的。