什么是TabBarController
tabbar,通常情况下用来下面互相切换ViewControllers。使用方式有几种,其中最常见的就是指定tabArray,里面按着顺序存放controllers对象做为下面切换。这种操作可以放在AppDelegate里面,最终,加入window上。
深入理解TabBarController
本人曾尝试把TabBarController,tabbar的hidden=YES,之后发现下面黑色的tabbar没有了,但是会有白色的东西覆盖在上面。background Color 设置为clear都不行。 后来发现tabbar的现实内容的地方,设置的高度小了。所以导致看起来是白色的。后来把内容部分拉长,tabbar虽然还在下面那个位置,但是 hidden之后,就不会有那个白色的效果了。
if ( [[self.view.subviews objectAtIndex:0] isKindOfClass:[UITabBar class]] )
contentView = [self.view.subviews objectAtIndex:1];
else
contentView = [self.view.subviews objectAtIndex:0];
得到内容view
。 如何自定义TabBarController
1。第一种方式是完全重写TabBarController,使用view来代替,上面都是button,工作量非常大,有一点就是各个层级之间的切换无法弄的太透彻。什么时候在上面,下面,什么时候隐藏。
2。第二种是继承一个UItabbarController,然后在这个子类的上层加一个View。这个的好处在于切换直接通过hide的tabbar进行中转就行了。
中转函数。- (void)switchView:(id)sender
{ int index = [self.subviews indexOfObject:sender];
tabbarctrl.selectedIndex = index;
}
最后,当我们需要badgeVale,别忘了去320找找好用的。
【iphone-tabbar 如何自定义TabBarController】相关文章:
★ 详解iOS App中UiTabBarController组件的基本用法
★ iOS开发中UIPopoverController的使用详解
★ 兼容iOS 10 升级xcode8出现的问题及一些适配问题的解决方案
★ 详解iOS应用中自定义UIBarButtonItem导航按钮的创建方法
★ iOS UITableView 与 UITableViewController实例详解