目前模态显示黑屏

时间:2015-12-15 20:13:14

标签: ios swift

我正在尝试提供一个模态。当我将它连接到一个按钮时,它显示没有问题。 enter image description here enter image description here。但是当我以编程方式调用它时,它会显示黑屏。

以下是我如何称呼它。

override func viewDidAppear(animated: Bool) {
    presentViewController(ModalViewControllerClass(), animated: true, completion: nil)
}

我正在使用swift 2.0。

3 个答案:

答案 0 :(得分:2)

您可能希望尝试其他方式以编程方式显示目标ViewController。试试这段代码:

CreateWindow

希望这会有所帮助:)

答案 1 :(得分:1)

您应该设置ViewController视图的大小。 (一般情况下,它可能不同,它不必是全屏。)如果您从UIStoryBoard实例化视图控制器,StoryBoard会在实例化期间为您执行此操作。在你的情况下,你应该自己做

let vc = ModalViewControllerClass()
vc.view.frame = UIApplication.sharedApplication().keyWindow?.bounds
presentViewController(vc, animated: true, completion: nil)

答案 2 :(得分:0)

简单地实例化ModalViewControllerClass的实例不会起作用。

您应该使用故事板功能instantiateViewControllerWithIdentifier

如果添加标识符" MyModal"对于故事板中的模态场景,您的代码可能如下所示:

override func viewDidAppear(animated: Bool) 
{
  if let newModal =   
    self.storyboard.instantiateViewControllerWithIdentifier("MyModal")
  {
    presentViewController(newModal, animated: true, completion: nil);
  }
}