自定义TabBarController控制器注意点

自定义TabBar控制器时调用父亲的init方法默认会调用

- (id)initWithNibName:(NSString*)nibNameOrNil bundle:(NSBundle*)nibBundleOrNil

{

self= [superinitWithNibName:nibNameOrNilbundle:nibBundleOrNil];

// init方法内部默认会调用initWithNibName,所以在initWithNibName中添加子控制器,无论以后通过哪种方式创建,都可以让我们自定义TabBarController一创建出来就拥有”4“个子控制器

// 如果要删除系统自带TabBar里面的控制时可以用下面的方法

- (void)viewWillAppear:(BOOL)animated

{

[superviewWillAppear:animated];

XZLog(@"删除之前%@",self.tabBar.subviews);

//遍历tabBar中所有的子控件,删除不需要控件

// UITabBarButton这个类是私有API

for(UIView*subViewinself.tabBar.subviews) {

if([subViewisKindOfClass:[UIControlclass]]) {

[subViewremoveFromSuperview];

}

}

XZLog(@"删除之后%@",self.tabBar.subviews);

}

你可能感兴趣的:(自定义TabBarController控制器注意点)