在Xcode 9更新后,pushViewController无法正常工作

时间:2017-10-23 08:44:59

标签: ios objective-c xib xcode9

我使用的是xib而不是storyBord。 问题是我想要在应用程序上更改窗口。 我可以加载下一个窗口但我无法使用pushViewController显示它,我告诉你在更新Xcode之前有效。

Thanx您的回复
按钮点击方法:

`MesFic *vueMesFic=[[MesFic alloc] initWithNibName:@"MesFic" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:vueMesFic animated:YES];
[vueMesFic release];
vueMesFic=nil;`

我的appDelegate.m

MyStyleSheet * myStyleSheetInstance = [[MyStyleSheet alloc] init];
[TTStyleSheet setGlobalStyleSheet:myStyleSheetInstance];
[myStyleSheetInstance release];
// Override point for customization after application launch.

//[self.window addSubview:[navigationController view]];

[self.window makeKeyAndVisible];
[window setRootViewController:navigationController];
return YES;

1 个答案:

答案 0 :(得分:0)

如果您正在使用navigationController,请确保已将navigationController设置为根控制器。

MyStyleSheet * myStyleSheetInstance = [[MyStyleSheet alloc] init];

UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:myStyleSheetInstance];
[window setRootViewController:navigationController];

在这种情况下,您可以使用self.navigation进行导航

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

如果您不愿意使用UINavigation,

 MyStyleSheet * myStyleSheetInstance = [[MyStyleSheet alloc] init];
[window setRootViewController:myStyleSheetInstance];

然后使用

[self presentViewController:viewController animated:YES completion:nil];

它可能对你有帮助