最近公司项目需求要将tabbar作成图中样式:
查网上资料,实现自定义tabbar有两种方法,
(1)通过继承UITabBarController,改变.tabbar中tabbarItem的样式。
(2)完全自定义UITabBar。
第二种方法,需要实现tabbar的delegate方法,所以决定采用第一种方法实现。
(1)新建CenterRaisedTabBarController:UITabBarController。
(2)在-(void)viewDidLoad方法中修改self.tabBar.backgroundImage。
把tabbar的背景修改为灰色带半圆形状的图片,图片采用UIBezierPath曲线并填充颜色做成。具体实现代码为:
其中addArcWithCenter:radius:startAngle:endAngle:clockwise:中角度为顺时针0,1/2∏,∏,3/2∏,∏。
http://blog.csdn.net/lgm252008/article/details/34819743
(3)修改每个viewController.tabBarItem的显示样式。
其中中间圆圈样式没有title,需要修改UITabBarItem的imageInsets设置不显示title。具体为:
(4)这样样式基本完成,但是会显示原tabBar的阴影。
通过[[UITabBar appearance] setShadowImage:]设置阴影1个像素宽的背景图片。
好了,收工!
网友评论