在没有storyboard的情况下改变视图控制器



我试图改变视图,但我想要通过代码来做,而不是通过故事板的原因并不重要,我发现这段代码:

[[self ] presentModalViewController:[self destinationViewController] animated:NO];

的问题是我不知道什么放在presentModalViewController或destinationViewController。有没有办法知道我的视图叫什么,这样我就可以把它们放进去?

在顶部你应该有

#import "NameOfViewController.h"

之后

UIViewController *destinationViewController = [[NameOfViewController alloc] init];
[self presentViewController:destinationViewController animated:NO completion:nil];

使用presentViewController代替presentModalViewController,因为后者已被弃用。我希望这对你有用。

在你给出的例子中,[self destinationViewController]创建并返回一个UIVIewController。

  1. 从NIB文件中加载一个

    controller = [[MyController alloc] initWithNibName:@"nib-resource-name" bundle:nil];

  2. 从storyboard中加载一个

    MyController * controller = [self.storyboard instantiateViewControllerWithIdentifier:@"controller-storyboard-id"];

  3. 以编程方式创建一个

    如何以编程方式创建UIViewController ?

最新更新