UITabBarController

1、一个标准的tab bar interface通常由下列对象组成:

   一个UITabBarController对象 每一个tab都必须有一个content view controller(所以每一个TabBarController有
   
   )一个属性是viewcontrollers 一个可选的的delegate对象
   
   UITabBarConroller *rootTBC = [[UITabBarConroller alloc]init];
   
       //创建新闻的TabBar
   NewsViewController *newsTBC = [[NewsViewController alloc]init];
    
   newsTBC.tabBarItem = [[UITabBarItem alloc]initWithTitle:@"焦点" image:[UIImage imageNamed:@"news"] 
   tag:101];
   
   rootTBC.viewControllers = @[newsTBC];
   
   UITabBarController通过viewControlers属性管理多个UIViewController
   
   viewControllers的UIViewController中,可通过selectedViewController属性参照当前画面的controller.
   
三、自定义UITabBar
     实际工作中,还是用纯粹的自定义TabBar的情况更多,在此先写写思路,整理好代码再来记录。

     第一种思路,也是我现在使用的,自定义TabBar继承UIView,每个tab是一个button,从而可以设置选中/未选中的图
     
     片,将button都添加到TabBar里面,button的点击事件就可以作为tab是否被选中的触发事件,通过delegate通知外
     
     面到底选中了哪个tab。

     第二种思路,既然UITabBar本身就是UIView的子类,应该可以重写drawRect函数完全自绘吧,这也是一种思路,好像
     
     一些开源代码也是这样做的。


你可能感兴趣的:(UITabBarController)