正如問題要求...如何在運行時確定應用程序是否使用UINavigationController?如何在運行時確定應用程序是否使用UINavigationController?
我需要在View Controller的init方法中解決這個問題。
正如問題要求...如何在運行時確定應用程序是否使用UINavigationController?如何在運行時確定應用程序是否使用UINavigationController?
我需要在View Controller的init方法中解決這個問題。
據我所知,你無法確定是否一個視圖控制器是在init方法的正常順序導航控制器內是 1.對象被初始化 2.對象被推到導航控制器上。
,如果你事先知道,而初始化,這將是推到一個視圖控制器視圖控制器,你可以添加新的init方法,如:
-(id)initWithBool:(BOOL)willIBePushedOnANavigationController
{
//insert whatever code for specific case for input
[self init];
}
希望這有助於
這樣做:
if([self.navigationController isKindOfClass:[UINavigationController class]]){
NSLog(@"yes it has navigation Controller");
}
else{
NSLog(@"nope it doesnt have");
}
NSLog(@"See Results Here => %@",[self.navigationController isKindOfClass:[UINavigationController class]]);
問候,
裏諾·瓊斯
這工作,但不在init方法中。有什麼方法可以在init方法中確定它嗎? – TigerCoding
視圖控制器在初始化時如何知道它將來如何顯示?也許不是在** init **方法中實現它,而是可以在** viewWillAppear **中實現它,並在那裏執行任何佈局/樣式更改? –
我寧願在viewWillAppear中執行此操作,但存在導致佈局突然到位的性能問題。也許在init中解決這個問題是不可能的? – TigerCoding
這是我決定做的,而不是在初始化時確定。它工作,所以我想這是唯一可以做到的真正方法。 – TigerCoding