2

我目前有一个在PresentationStyle.PageSheet中以模态方式呈现VC的segue。我已经通过编程和故事板完成了这个任务。我用两种方法得到了相同的结果,模式弹出窗口呈现自己,但不显示来自VC的UIView内的任何内容。它只会显示视图的背景颜色,这就是全部。我还想指出,如果我使用默认的模式segue(全屏),但是使用页面表单样式或使用UIPopoverController失败,则显示所有内容。这里有一些截图显示了我正在谈论的内容。UIModalPresentationStyle.PageSheet不显示ViewController内容

这是什么样子的故事板: storyboard

这就是它看起来像在模拟器和实际的iPad: enter image description here

这里是我的编码方法看起来像:

@IBAction func addPickUp(){ 
    var addPickupVC = self.storyboard?.instantiateViewControllerWithIdentifier("pickup") as AddPickupViewController 
    addPickupVC.modalPresentationStyle = UIModalPresentationStyle.PageSheet 
    self.presentViewController(addPickupVC, animated: true, completion: nil) 
} 

这写在迅速为ipad ios8。 我在这里错过了什么?任何建设性的反馈是赞赏!

编辑:这是要模态呈现的VC的文档大纲。 outline

回答

3

您的代码显示弹出窗口是正确的。
AutoLayout约束可能存在问题。
正如你所看到的,你的弹出窗口被显示,但标签丢失。

  1. 删除您的自动版式(他们会自动生成),看看标签将是可见的,现在
  2. 尝试添加新标签。拖放,并在调试面板

    • 单击“调试视图层次”按钮,不指定任何约束
    • 调试视图

      enter image description here

    • 现在你可以看到你的观点丰盛。选择你的标签,如果它存在并且看到它的限制。

      enter image description here

  3. 检查自动版式的约束和标签出现在正确的Size Classes
    尺寸类别显示波纹管UI设计师。在我的情况下是(任何任何)。
    这意味着它适用于所有尺寸和所有设备。
    另请检查您的约束在运行时是否被删除。
    你可以在右侧的检查员看到它。

    enter image description here

+0

这是导致它不显示的大小类。谢谢! – Boid 2014-11-17 17:07:40

+0

很高兴听到它帮助!我有类似的问题。 – 2014-11-18 08:28:16

0

在故事板中,您可以简单地控制将连接从按钮拖动到您呈现的Viewcontroller。没有理由为此拥有@IBAction。如果使用InterfaceBuilder方法,您可以选择将segue上的表示样式设置为PageSheet。

+0

是的,我做了这一切。就像我在问题提及的问题中提到的那样,并以编程方式(分开)。 – Boid 2014-11-06 17:27:44

+0

对不起,误解了第二部分。你可以为该控制器添加文档大纲的屏幕截图吗? – 2014-11-06 17:32:29

+0

已添加。没有太多看到诚实。我尽量保持简单。 – Boid 2014-11-06 17:38:10