2017-04-07 239 views
0

我已經添加了一個NavigationBar與View2與「後退」項目,然後我從該項目Ctrl +拖動到View1添加segue(a show segue)。現在,無論何時使用「返回」導航到View1,我都會在此視圖(View1)中獲得一個導航欄(帶有「返回」項)。我只想要一個導航欄到View2,而不是View1。我總是可以隱藏View1的NavigationBar程序,但我想知道如果我做錯了什麼。segue將視圖添加到視圖

回答

1

你需要隱藏內部viewWillAppear中視圖1的導航欄,取消隱藏,同時要viewWillDisappear:

視圖1:

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 
    [self.navigationController.navigationBar setHidden:true]; 
} 

- (void)viewWillDisappear:(BOOL)animated 
{ 
    [super viewWillDisappear:animated]; 
    [self.navigationController.navigationBar setHidden:false]; 
} 

視圖2:

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 
    [self.navigationController.navigationBar setHidden:false]; 
} 

- (void)viewWillDisappear:(BOOL)animated 
{ 
    [super viewWillDisappear:animated]; 
    [self.navigationController.navigationBar setHidden:true]; 
} 

任何一個您可以使用類函數,view1函數或view2函數來隱藏並切換控制器時取消隱藏導航欄。