OStack程序员社区-中国程序员成长平台

标题: ios - 我的 viewController 没有正确显示 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 00:22
标题: ios - 我的 viewController 没有正确显示

在我的 iPad 应用程序中,我试图以模态表单样式呈现我的观点之一。 这是一些代码:

-(void)present
{
    SecondViewController *modal = [[SecondViewController alloc]init];
    modal.modalPresentationStyle = UIModalPresentationStyleFormSheet;
    [self presentModalViewController:modal animated:YES];
}

我正在使用 Storyboard,并且我已将 textView 和工具栏之类的东西放在我想显示的 View 中。我已经在 Identity Inspector 中设置了正确的类,并且在类文件中我检查了它是否是正确的 View ,其中包含 NSLog(@"Right view");

当调用 void present 时,会出现一个 View ,但只是一个深白色的正方形。我的 Storyboard 中没有任何内容,我什至尝试更改 View 和 textView 的背景颜色以查看是否有东西在广场外,但整个东西都保持白色。感觉好像它没有使用我在 Storyboard 中创建的 View ,但我已将其设置为正确的类,并且在调用它时会打印出 NSLog。我没有在 Storyboard 中以任何方式连接这两个 View ,SecondViewController 只是 float ,所以这可能是问题吗?调用 -(void)present 的按钮是以编程方式创建的,所以我也不能按 ctrl+拖动它。

为什么它显示的是我的类的空版本?



Best Answer-推荐答案


在“Identity Inspector”中为您的 ViewController 设置一个“Storyboard ID”,然后像这样呈现它:

-(void)present
{
    SecondViewController *modal = [self.storyboard instantiateViewControllerWithIdentifier"myStoryboardID"];
    modal.modalPresentationStyle = UIModalPresentationStyleFormSheet;
    [self presentModalViewController:modal animated:YES];
}

如果你使用的是 iOS6,presentModalViewController:animated: 已被弃用,所以使用这个:

 -(void)present
    {
        SecondViewController *modal = [self.storyboard instantiateViewControllerWithIdentifier"myStoryboardID"];
        modal.modalPresentationStyle = UIModalPresentationStyleFormSheet;
        [self presentViewController:modal animated:YES completion:nil];
    }

关于ios - 我的 viewController 没有正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14206575/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4