【问题标题】:storyboard, self presentViewController, iOS 6, blank screen故事板,self presentViewController,iOS 6,空白屏幕
【发布时间】:2013-07-07 20:20:17
【问题描述】:

我正在使用情节提要,我有一个视图控制器,单击时我需要以模态方式显示另一个视图控制器。我正在尝试使用此代码

[self presentViewController:zoomV animated:YES completion:NULL];

我想出了一个空白屏幕。 这就是我的创作方式

zViewController *zoomV = [[zViewController alloc] init];
[self presentViewController:zoomV animated:YES completion:NULL];

我尝试对此进行研究,一些答案围绕使用情节提要而没有关联的 rootviewcontroller。所以我在初始场景中拥有一个navigationController,然后从那里我将一个关系拖到另一个Viewcontroller,该关系将它定义为rootViewcontroller。这足够了吗?还是这无关紧要?

【问题讨论】:

  • 根视图控制器与呈现模态控制器无关。您上面的代码是否在根视图控制器中?你是如何创建 zoomV 的——我怀疑你的问题在那里。
  • 我确实实例化了 zoomV,并点击了它的 viewdidload,我确实在运行时点击了该方法。
  • 你在哪里创建 zViewController 的视图层次结构?在情节提要中,在其单独的 xib 中还是通过代码?
  • 不,我在情节提要中添加了一个 ViewController,通过 Interface Builder 设置它的 UI(它有一个 scollview 和一个 imageview),然后我用 .h 和 .m 文件创建了一个同名的类。并将其与情节提要中的 Viewcontroller 相关联。我应该提到,在我的故事板中,没有箭头击中那个 zViewController,它只是独立存在。

标签: ios storyboard


【解决方案1】:

既然您的故事板中有您的 zViewController,您应该使用 UIStoryboardinstantiateViewControllerWithIdentifier: 实例化您的 zViewController。 在您的第一个视图控制器中,不要使用 alloc/init 创建 zViewController,当然要在情节提要中为您的 zViewController 设置标识符。

zViewController *zoomV = [self.storyboard instantiateViewControllerWithIdentifier:@"yourIdentifier"];
[self presentViewController:zoomV 
                   animated:YES 
                 completion:NULL];

您也可以使用 segue 并直接执行它来完成相同的操作,而无需实例化 zViewController,但这取决于您。

作为第二条(小)注释,不要在 ObjC 中命名以小写开头的类:)。

【讨论】:

    【解决方案2】:

    您可以参考下面的 sn-p 故事板:

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
    AddNameViewController *sfvc = [storyboard instantiateViewControllerWithIdentifier:@"AddNameViewController.m"];
    [sfvc setModalPresentationStyle:UIModalPresentationFullScreen];
    [self presentViewController:sfvc animated:YES completion:nil];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-27
      • 1970-01-01
      • 2014-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多