UIModalPresentationStyle.FormSheet始终在iPad上全屏(SWIFT)

时间:2014-08-31 07:47:02

标签: objective-c uiviewcontroller swift presentviewcontroller uimodalpresentationstyle

我正在尝试将一些Objective-C代码翻译成SWIFT。

我正在加载一个UIViewController作为表单。 这是objective-c中的代码:

generalPopup.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
generalPopup.modalPresentationStyle = UIModalPresentationFormSheet;

这是Swift中的代码:

generalPopup.modalTransitionStyle = UIModalTransitionStyle.CoverVertical
generalPopup.modalPresentationStyle = UIModalPresentationStyle.FormSheet

在Objective-C中,视图显示为FormSheet。 在swift中,CoverVertical被维护,但视图占据整个屏幕而不是显示为FormSheet。

提醒一下,根据Apple的说法,FormSheet是:

  

视图呈现样式,其中呈现视图的宽度和高度小于屏幕的宽度和高度,并且视图在屏幕上居中。如果设备处于横向方向且键盘可见,则向上调整视图的位置以使视图保持可见。所有未覆盖的区域都会变暗以防止用户与其进行交互。

1 个答案:

答案 0 :(得分:1)

继续引用文档:

  

在水平紧凑的环境中,此选项与UIModalPresentationFullScreen.

的行为相同

你似乎有一个水平紧凑的环境"。检查swift项目中的故事板设置。