首页 > 代码库 > xcode6 里面通过subclass UITabbar 来修改tabbar的高度

xcode6 里面通过subclass UITabbar 来修改tabbar的高度

项目需要,需要修改tabbar的高度。

网上找了很多,基本上两个思路

1. 遍历tabbar的所有子view,然后修改frame。

2. 完全自己定制tabbar

第一个,感觉不是很稳定,需要每次tabbar修改frame后,再次调用修改。

第二种,感觉修改太多了。我只是要修改以下高度啊。


后来发现可以在xcode上设置UITabbarController的UITabbar,那是不是可以自己subclass以下UITabbar,然后在sizeThat 重载下,返回自己的想要的高度。

试了下,果然OK的。

步骤

1. 子类化UITabBar

HDUITabBar.h

@interface HDUITabBar :UITabBar


@end


 HDUITabBar.m

#import "HDUITabBar.h"


@implementation HDUITabBar


- (CGSize)sizeThatFits:(CGSize)size{

   CGSize osize = [supersizeThatFits:size];

   if(osize.height <80) osize.height =80;

   return osize;

}

@end


2 在xcode的storyboard中把Scene中UITabbarController 的 UITabbar 替换成 HDUITabBar。


xcode6 里面通过subclass UITabbar 来修改tabbar的高度