簡體   English   中英

IOS7中的PushViewController崩潰

[英]PushViewController Crash in IOS7

當我嘗試在運行IOS6的xcode5中運行舊應用程序時,我在IOS7中遇到一個奇怪的問題,但是當我嘗試將Nextview崩潰時這是IOS7,這是我的應用程序崩潰的代碼。

 FamilyBioViewController *detailView=[[FamilyBioViewController alloc] initWithNibName:@"FamilyBioView" bundle:[NSBundle mainBundle]];
 [self.navigationController pushViewController:detailView animated:YES];
 [detailView release];

當崩潰發生時,它在控制台中未顯示任何錯誤。以下屏幕截圖顯示了崩潰結果 在此處輸入圖片說明 有趣的是,當我使用presentViewController而不是pushViewController呈現視圖時,它在IOS 7中運行良好。

FamilyBioViewController *detailView=[[FamilyBioViewController alloc] initWithNibName:@"FamilyBioView" bundle:[NSBundle mainBundle]];
 [self presentViewController:detailView animated:YES completion:nil];
 [detailView release];

所以問題是為什么在iOS7中pushViewController引起問題? 任何幫助將不勝感激。

編輯:有關更多詳細信息,請參閱我的應用程序流程 這里 這是我的AppDelegate代碼

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
  {
 if(tabBarController.selectedIndex==1 || tabBarController.selectedIndex==3)
 {
    [(UINavigationController *)[tabBarController selectedViewController] popToRootViewControllerAnimated:NO];
}
  }

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController
 {
   return YES;
 }
FamilyBioViewController *detailView = [[[FamilyBioViewController alloc] initWithNibName:@"FamilyBioView" bundle:[NSBundle mainBundle]] autorelease];
[self.navigationController pushViewController:detailView animated:YES];

----編輯----我上面的例子不是解決方案!

不要忘了為NavigationController聲明您的第一個viewController

在iOS6中,這不是一個大問題。 在iOS7中

看看

[[UINavigationController alloc] initWithRootViewController: (UIViewController *)controller]

您只有在擁有根的情況下才能推送!

視圖控制器數組中的視圖控制器必須唯一

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM