在tab主頁的UIViewController
中的viewWillAppear:里寫self.hidesBottomBarWhenPushed = NO;
宰译,顯示tabBar檐蚜,在子VC
中,隱藏tabBar(重寫UINavigationController
沿侈,在里面重寫方法- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{}
):
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:YES];
// [self.navigationController setHidesBottomBarWhenPushed:YES];
self.hidesBottomBarWhenPushed = NO;
}
KBaseNavigationController.h
@interface KBaseNavigationController : UINavigationController
@end
KBaseNavigationController.m
#import "KBaseNavigationController.h"
@interface KBaseNavigationController ()
@end
@implementation KBaseNavigationController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
}
- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated {
if (self.viewControllers.count > 0) {
viewController.hidesBottomBarWhenPushed = YES;
} else {
viewController.hidesBottomBarWhenPushed = NO;
}
[super pushViewController:viewController animated:animated];
}
@end