2017-10-17 65 views
0

下面的代碼不會像當前在應用商店中那樣更改爲視圖控制器。只有改變是新的Xcode/IOS11 SDK。我做了一些谷歌搜索,發現了一些其他人誰有同樣的問題,但能夠通過刪除數據導出到解決,重新啓動或轉向animated:NO但他們都沒有爲我工作...pushViewController不能與IOS11 SDK一起使用

的代碼如下:

- (void)viewDidAppear:(BOOL)animated { 
    [super viewDidAppear:animated]; 

    // Set up observers etc code omitted.... 

    [self.navigationController setNavigationBarHidden:YES animated:YES];  

    Home *viewController = [[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"Home"]; 
    NSLog(@"Nav Controller: %@",self.navigationController); // Output: Nav Controller: <UINavigationController: 0x7fc2d182d800> 
    NSLog(@"View Controller: %@",viewController); // Output: View Controller: <Home: 0x7fc2d0717cc0> 
    [[self navigationController] pushViewController:viewController animated:YES]; // No change to different view controller. 
} 

任何幫助,將不勝感激!謝謝!

回答

0

我們都面臨着同樣的問題,推視圖控制器不是從viewDidAppear工作。當我們調查問題時,我們發現導航viewController的頂部有這個視圖,但沒有出現在屏幕上。嘗試推動控制器在DispatchQueue.main.async { }塊將它工作。

PS。在iOS 11.1中解決了這個問題。

+0

我有pushViewController按照您在ObjectiveC中推薦的方式進行包裝,雖然它有點作用,但它在幾次推送後不再動畫。 – Jargen89

+0

重要的是要注意我正在推動然後彈回到我推進的屏幕上。 – Jargen89

-1

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

試試這個

+0

沒有工作,這實際上是如何開始的,但我嘗試了不同的方式,我在網上找到的東西... – berr08

+0

還有其他建議嗎? – berr08

+0

你有什麼發現?有同樣的問題,以前工作的東西都沒有更多的工作在Xcode 8上,ios 11 – NaXir

相關問題