XHTabbarViewController 1.0.7

XHTabbarViewController 1.0.7

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2017年1月

‘grain’维护。



  • 高勇

继承自UIViewController的自定义TabbarViewController,支持自定义tabbar高度,使用方法简单,在子类中实现指定方法,解决系统tabbar隐藏困难,可定制性差的问题。

兼容性:最低iOS目标:iOS 6

使用方法:使用CocoaPods安装

pod 'XHTabbarViewController', '~> 1.0.7’

代码调用:DemoTabbar : XHTabbar 重写XHTabbar -(void) createUI 方法

DemoTabbarViewController : XHTabbarViewController 重写XHTabbarViewController -(void) makeTabbar 方法

UINavigationController *nav1 = [[UINavigationController alloc] initWithRootViewController:[ViewController1 new]];
UINavigationController *nav2 = [[UINavigationController alloc] initWithRootViewController:[ViewController2 new]];
UINavigationController *nav3 = [[UINavigationController alloc] initWithRootViewController:[ViewController3 new]];
DemoTabbarViewController *tabVC = [[DemoTabbarViewController alloc] initWithViewController:@[nav1,nav2,nav3]];
self.window.rootViewController = tabVC;
[self.window makeKeyAndVisible];

显示/隐藏tabbar:XHTabbarViewController 的tabbar.hidden = NO; //或 YES

自定义tab切换动画:在DemoTabbarViewController中添加以下block

__weak XHTabbarViewController *weakSelf = self;
//自定义切换动画,发挥想象力吧
self.tAnimationBlcok = ^(UIViewController *fromVC,UIViewController *toVC)
{
    toVC.view.transform = CGAffineTransformMakeScale(0.1, 0.1);
    toVC.view.alpha = 0;
    [UIView animateWithDuration:0.35 animations:^{

        fromVC.view.transform = CGAffineTransformMakeScale(0.1, 0.1);
        toVC.view.transform = CGAffineTransformMakeScale(1, 1);
        fromVC.view.alpha = 0;
        toVC.view.alpha = 1;

    }completion:^(BOOL finished)
     {
         //动画完成,需要掉用此方法,完成后续
         [weakSelf tAnimationBlockCompliated:fromVC toController:toVC];
         fromVC.view.transform = CGAffineTransformMakeScale(1, 1);
     }];
}