文章目录
需求
点击 底部 tabbar 的 国是书院item的时候,调起第三方sdk
如图
点击底部item
调起三方sdk
实现
一 、添加 占位vc
- (void)showGssyVC
{
TPGssyViewController *gssy = [[TPGssyViewController alloc] init];
[self setUpOneViewController:gssy
WithImage:[Image(@"TabBar/tabbar_gssy_default") imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]
WithSelImage:[Image(@"TabBar/tabbar_gssy_selected")imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]
WithTitle:@"国是书院"];
self.gssyVC = gssy;
}
- (void)setUpOneViewController :(UIViewController *)Vc WithImage:(UIImage *)image WithSelImage:(UIImage *)selImage WithTitle:(NSString *)title{
MLNavigationController *navC = [[MLNavigationController alloc]initWithRootViewController:Vc];
navC.interactivePopGestureRecognizer.enabled = NO;
Vc.tabBarItem.image = image;
Vc.tabBarItem.selectedImage = selImage;
Vc.tabBarItem.title = title;
Vc.tabBarItem.imageInsets = UIEdgeInsetsMake(-3, 0, 3, 0);
self.tabBar.tintColor = [UIColor colorWithHexString:@"0xB93034"];
}
二 、禁止占位vc可选中状体
实现 UITabBarControllerDelegate 的 - (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController API_AVAILABLE(ios(3.0))
方法
///当点击占位vc 的item时候,不选中相应的vc
- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController API_AVAILABLE(ios(3.0))
{
MLNavigationController *navi = (MLNavigationController *)viewController;
if ([navi isKindOfClass:[MLNavigationController class]]) {
if ([navi.viewControllers[0] isKindOfClass:[TPGssyViewController class]]) {
return NO;;
}
}
return YES;
}
三 、重写tabViewcontroller 的 - (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item 方法
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
NSString *title = item.title;
if ( if ([title isEqualToString:@"国是书院"]) {
if (!self.zxtManager) {
self.zxtManager = [zxtSDKManager getInstance];
}
///调起三方sdk
[self.zxtManager loadSDK];
}
}