#import <UIKit/UIKit.h>
@interface KSCarTuningTabBarController :UITabBarController
@end
第一: @interface KSCarTuningTabBarController ()<UITabBarControllerDelegate>
第二: - (void)viewDidLoad 方法中:self.delegate = self;
第三:
#pragma mark- UITabBarControllerDelegate
- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController{
NSLog(@"%s",__FUNCTION__);
self.modle = [KSUserModlesharedInstance];
// 代表这个View无法显示,无法点击到标签栏代表的VC
NSLog(@"%@",viewController);
if (viewController ==self.viewControllers[1] || viewController ==self.viewControllers[2]) {
if (self.modle.isLogin !=1){
returnNO;
}
}
returnYES;
}
要是跳转到self.viewControllers之外的其他无关界面
- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController{
NSLog(@"%s",__FUNCTION__);
self.modle = [KSUserModle sharedInstance];
NSLog(@"%@",viewController);
if (viewController == self.viewControllers[1]||viewController == self.viewControllers[2]) {
if (self.modle.isLogin != 1){
//打开登陆界面
KSLoginViewController* lv = [KSLoginViewController new];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:lv];
[self presentViewController:nav animated:YES completion:^{}];
return NO;
}
}
return YES;
}