swift 自定制 tabbar

在这里,你将要继承于 UIImageview 自定制一个 tabbar .效果如下:


swift 自定制 tabbar_第1张图片

1.首先你需要继承于 UIButton 自定制 tabbar 上的按钮

swift 自定制 tabbar_第2张图片

2.继而你便可以继承于 UIImageview 自定制 tabbar

swift 自定制 tabbar_第3张图片
swift 自定制 tabbar_第4张图片

3.然后在 TabBarController 中创建自定制的 tabbar,同时创建 TabBarController 管理的视图控制器对象

swift 自定制 tabbar_第5张图片

4.最后在各个一级界面的viewWillAppear:方法中,根据界面结构重新设置 tabbar 的 frame 并添加

注:

1.想必会有人问道为什么不直接将自定制的 tabbar 添加在 TabBarController 的子视图上, 这是因为在进行从二级界面到一级界面的拖返操作时会有问题,只有将 tabbar 放在各个一级界面的子视图上,跳转时才不必特意隐藏掉 tabbar,拖返时也不必纠结tabbar如何显示

2.tabbar 的 frame 的设置要根据各个一级界面有无导航来计算,无导航可设置为:CGRectMake(0, SCREEN_HEIGHT-49, SCREEN_WIDTH, 49),有导航可设置为CGRectMake(0, SCREEN_HEIGHT-49-NavigationBar_HEIGHT-StatusBar_Height, SCREEN_WIDTH, 49),不建议根据当前控制器的子视图的尺寸 self.view.frame来计算

期待你的评论建议O(∩_∩)O~

你可能感兴趣的:(swift 自定制 tabbar)