我對iOS很新。我有一個嵌入的UINavigationController一個UIViewController,我通過將此代碼添加到viewDidLoad方法隱藏在第一視圖欄:在iOS之間切換iOS中的UINavigationController欄
if (self) {
self.navigationController.navigationBarHidden = YES;
self.navigationItem.title = @"";
}
然後我連接用塞克(通過按鈕觸發此查看到另一個的UIViewController在第一個視圖),並將此代碼添加到它的viewDidLoad方法:
if(self)self.navigationController.navigationBarHidden = NO;
一切工作正常。當我加載應用時,導航欄消失了,當我導航到第二個(子)視圖時,酒吧就在那裏。然後,當我點擊後退按鈕時,它會回到第一個(父)視圖,但NavBar回來了。
我嘗試添加命名塞克「BackToMain」並加入prepareSeque方法,我放在第二個觀點:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"BackToMain"]) {
UINavigationController *parentNavigationController = segue.destinationViewController;
parentNavigationController.navigationController.navigationBarHidden = YES;
}
}
但它永遠不會被調用。
理想情況下,我會在父視圖中放置一個方法,以在每次顯示時隱藏NavBar。就像:
- (void)processIncomingSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if (self) self.navigationController.navigationBarHidden = NO;
}
但我真的不知道這是可能的。
完美!所以很快重播。非常感謝Pfitz。 – solerous