关闭

关于隐藏tabBar

标签: 隐藏tabBar
176人阅读 评论(0) 收藏 举报

现在很多展示类的app都使用了tabBar, 但是 有时候,为了效果或者其他, 我们需要将tabBar去掉,那么,我们要怎么做呢?


方法一:  非常非常非常简单的一句话:

         <>  一下是push方法, 我感觉写详细一点是我的责任,请不要喷我啰嗦 <>

                    //创建你要push的对象 second; 并且,这个页面就是你要将tabBar隐藏的地方

                    SecondViewController *second = [ [SecondViewController alloc] init];

                      <*>>*<<*>>*<<*> 隐藏tabBar的方法   隐藏tanBar的方法   隐藏tanBar的方法 <*>>*<<*>>*<<*>

                     [second setHidesBottomBarWenPushed:YES];

                     //或者

                     self.hidesBottomBarWhenPushed = YES;

                   //push

                    [self.navigationController pushViewController:second animated:YES];

           这句话要在 push navigation之前执行,非常的方便,简介!






方法二:

                //执行动画设置
    [UIView beginAnimations:nil context:NULL];
    
    //设置执行的持续时间 就是你push的时候 覆盖的那个动画过程的时间
    [UIView setAnimationDuration:6];
    
    //遍历此控制器的tabBarController中的子视图
    for (UIView *view in self.tabBarController.view.subviews) {
        
        //判断遍历出来的view 是否是UITabBar的类
        if ([view isKindOfClass:[UITabBar class]]) {
            
            //[UIScreen mainScreen].bounds.size.height-49   是下面tabBar的高度 如果减去49 就不会显示下面的view 如果不减去就会显示
            if (view.hidden) {
                
                [view setFrame:CGRectMake(view.frame.origin.x,[UIScreen mainScreen].bounds.size.height, view.frame.size.width, view.frame.size.height)];
            }else{
                [view setFrame:CGRectMake(view.frame.origin.x, [UIScreen mainScreen].bounds.size.height, self.view.frame.size.width, self.view.frame.size.height)];
            }
        }else{
            if (view.hidden) {
                [view setFrame:CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, [UIScreen mainScreen].bounds.size.height)];
            }else{
                [view setFrame:CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, [UIScreen mainScreen].bounds.size.height)];
            }
        }
    }
    //这是view执行的动画, 添加这句话,如果你的持续时间写的长的话你会发现 下面的tabBar 是慢慢的往下消失的, 如果不写这句话,你会发现,第二界面覆盖的时候,下面的tabBar和第二界面是同时慢慢的覆盖和消失的
    [UIView commitAnimations];




正在push的状态



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:10400次
    • 积分:378
    • 等级:
    • 排名:千里之外
    • 原创:27篇
    • 转载:6篇
    • 译文:1篇
    • 评论:0条
    文章分类