zoukankan      html  css  js  c++  java
  • 详谈隐藏Tabbar的几种方法

                如今正在写的一个项目,涉及到了使用两个TabBar,然后我须要显示当中一个的时候,然后隐藏另外一个,可是中间却出现故障了.我查了一些资料,想总结一下关于TabBar的隐藏.


        第一种方法是:

       //隐藏tarBar

        self.hidesBottomBarWhenPushed = YES;


    这种方法是UIViewController的属性,非常好用.可是我须要把隐藏的TabBar显示出来的时候,却发现显示不出来.

    - (void)viewWillAppear:(BOOL)animated

    {

       

        //显示TabBar

        self.hidesBottomBarWhenPushed = NO;

        //显示导航条

        self.navigationController.navigationBarHidden = NO;

    }

         

        然后,我開始想,有没有其他的方法,我找了一下,发现了另外一种方法;

        另外一种方法:

        //隐藏tarBar

         self.tabBarController.tabBar.hidden = YES;


    这种方法才是UITabBarController 自带的方法 ,我写了一下,发现可以隐藏.

    然后,我赶紧试一下,是不是能够显示出来.

    - (void)viewWillAppear:(BOOL)animated

    {

        //显示TabBar

        self.tabBarController.tabBar.hidden = NO;

        //显示导航条

        self.navigationController.navigationBarHidden = NO;

    }

    我发现特别管用,我的TabBar显示出来了.我的问题,也攻克了.所以,建议大家用另外一种方法.


    当然,在我查资料中,我也看到网友们提到的第三种方法;

    第三种方法 :

    就是把UITabBar的位置移动。即调整frame.origin.y的值。消失就是把它移出屏幕,出现就是把它再放回原地。(但,还原时又卡顿现象,体验非常差,不建议)

    所以。在ViewController7.m中:

    //添加一个试图即将出现时的方法。并在此设置把tabBar下移,移除整个屏幕。相当于消失了
    -(void)viewDidAppear:(BOOL)animated{
        NSArray *arr1=self.tabBarController.view.subviews;
        UIView *view1=[arr1 objectAtIndex:0];
        UITabBar *tabBarView1=[arr1 objectAtIndex:1];
        //第一个视图就是全屏,不须要把高度撑满。所以能够不做不论什么设置
        //view1.frame=CGRectMake(0, 0, 375, 667);
        tabBarView1.frame=CGRectMake(0, 667, 375, 49);
    }

    在ViewController1.m中:

    //添加一个viewDidAppear,把下移的tabBar再上移,相当于还原到原地
    -(void)viewDidAppear:(BOOL)animated{
        NSArray *arr2=self.tabBarController.view.subviews;
        UITabBar *tabBarView2=[arr2 objectAtIndex:1];
        tabBarView2.frame=CGRectMake(0, 618, 375, 49);
    }

    好吧,眼下知道就是这些了,欢迎大家依据自己的需求,挑选合适的方法.


         





  • 相关阅读:
    Python代写利用LSTM模型进行时间序列预测分析
    R语言代写使用K-Means聚类可视化纽约市WiFi访问
    BZOJ 4448: [Scoi2015]情报传递 DFS序+主席树
    BZOJ 2213: [Poi2011]Difference 细节题
    CF1268B Domino for Young 黑白染色
    BZOJ 3727: PA2014 Final Zadanie 树形DP
    BZOJ 4726: [POI2017]Sabota? 树形dp
    CF1137F Matches Are Not a Child's Play LCT+树状数组
    BZOJ 2238: Mst DFS序+KDtree
    CF1111C Creative Snap 线段树
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5168710.html
Copyright © 2011-2022 走看看