天天看點

IOS 中 hidesBottomBarWhenPushed的用法

TabBarController裡面的子界面VC1再套NavgationController,當VC1 push VC2下去的時候,一般情況是VC2界面Tabbar還在,這種情況都不是一般APP需求的。

解決Tabbar隐藏辦法  (以前工作隐藏各種frame處理,最後還是解決了,但是代碼變得很垃圾,一點都不高端)

 VC.hidesBottomBarWhenPushed = YES;這個完美解決

使用方法與情況:

1.

情況:如果是sb連線,vc1界面的邏輯代碼隻push一些簡單界面(這些界面也沒有與其他的TabBarController子界面有關系)

解決:隻是要再sb裡面push目标的界面的屬性面闆打上鈎鈎Hide Bottom Bar On Push。

2.

情況:vc1界面的邏輯代碼隻push許多界面(這些界面也與其他的TabBarController子界面有關系,或者push一些不需要sb的界面(純代碼或者xib界面))

解決:

(1)sb連線push的是這樣子弄

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender

{

    if ([segue.identifier isEqualToString:@"HomeListCellSB"]) {

        LeaveAMessage *secondDetailVC=(LeaveAMessage *)segue.destinationViewController;

        secondDetailVC.hidesBottomBarWhenPushed = YES;//就是這麼簡單解決,不要懷疑

    }

}

(2)代碼push的是這樣子弄

twoTb.hidesBottomBarWhenPushed = YES;//代碼push就是這樣子弄,也是這麼簡單

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

(3)sb中

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{

        [segue.destinationViewController setHidesBottomBarWhenPushed:YES];

}

是push的目标界面使用這個屬性

目前隻用到了這3種用法

IOS 中 hidesBottomBarWhenPushed的用法