iOS隱藏 tarBar多種方法

 

第一種方法是:ide

  // 隱藏 tarBario

    self . hidesBottomBarWhenPushed = YES ;object

這個方法是UIViewController的屬性,很好用.可是我須要把隱藏的TabBar顯示出來的時候,卻發現顯示不出來.方法

- ( void )viewWillAppear:( BOOL )animatedim

{tab

 

// 顯示 TabBar移動

self . hidesBottomBarWhenPushed = NO ;animate

// 顯示導航條view

self . navigationController . navigationBarHidden = NO ;vi

}

而後,我開始想,有沒有其它的方法,我找了一下,發現了第二種方法;

第二種方法:

// 隱藏 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);
}
相關文章
相關標籤/搜索