UITabBarController点击UITabBarItem 禁止跳转ViewController
2016-04-01 14:22
531 查看
#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;
}
@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;
}
相关文章推荐
- Microsoft Build 2016 Day 2 记录(多图慎入)
- 仿写“同行说”之UI控件介绍
- Magnum Kuernetes源码分析(二)
- Codeforces 135E Weak Subsequence(组合计数)
- iOS开发-UI控件:动态改变UITableView中的Cell高度
- invalid request block size: 21573 (max 4096)...skip错误原因
- UIImageView添加圆角
- iOS开发-UI控件:UIDatePicker日期/时间选取器(滚轮)
- iOS开发-UI控件:UISwitch控件两种使用方法和监听
- iOS开发-UI控件:UITableView设置Section间距
- Android酷炫实用的开源框架(UI框架)
- UE4初学笔记一
- iOS开发-基础:UILabel字体加粗
- Gradle for Android(二)全局设置、自定义BuildConfig、混淆
- Android 联系人快速索引组件 QuickIndexView
- iOS _UITextView 例子 及使用
- UVA 10706 Number Sequence
- Android初级开发----用Handle机制更新UI界面
- 双端队列(deque)数组实现
- EasyUi的tab组件href属性链接的页面JS代码无法执行