我目前有一个在PresentationStyle.PageSheet 中以模态方式呈现VC 的segue。我已经通过编程和 Storyboard完成了这项工作。我使用这两种方法得到了相同的结果,模式弹出显示本身,但不显示来自 VC 的 UIView 内的任何内容。它只会显示 View 的背景颜色,仅此而已。我还想指出,如果我执行默认模式转场(全屏),但页面呈现样式或使用 UIPopoverController 失败,则所有内容都会显示。以下是一些屏幕截图,显示了我正在谈论的内容。
这就是 Storyboard中的样子:
这是模拟器和实际 iPad 上的样子:
这是我的编码方法:
@IBAction func addPickUp(){
var addPickupVC = self.storyboard?.instantiateViewControllerWithIdentifier("pickup") as AddPickupViewController
addPickupVC.modalPresentationStyle = UIModalPresentationStyle.PageSheet
self.presentViewController(addPickupVC, animated: true, completion: nil)
}
这是为 ipad ios8 用 swift 编写的。 我在这里缺少什么?任何建设性的反馈意见都将受到赞赏!
编辑:这里是以模态方式呈现的 VC 的文档大纲。
最佳答案
您用于呈现弹出窗口的代码是正确的。
可能是自动布局约束有问题。
正如您所看到的,您的弹出窗口已显示,但标签丢失。
- 删除自动布局(它们将自动生成)并查看标签现在是否可见
- 尝试添加新标签。拖放它,并且不指定任何约束
调试 View
- 点击调试面板上的“调试 View 层次结构”按钮
- 现在你可以尽情地看到你的观点了。选择您的标签(如果存在)并查看其限制。
- 点击调试面板上的“调试 View 层次结构”按钮
检查您的自动布局约束和标签是否正确 Size Classes
尺寸类别如下 UI 设计器所示。就我而言,它是(任何任何)。
这意味着它适用于所有尺寸和所有设备。
另请检查您的约束是否在运行时未删除。
您可以在右侧的检查器中看到它。
关于swift - UIModalPresentationStyle.PageSheet 不显示 ViewController 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26785439/