【发布时间】:2019-01-20 05:03:15
【问题描述】:
我正在开发一个带有显示UIDatePicker 的弹出框的应用程序。我将其设置为始终是弹出视图,即使在手机上也是如此。它可以工作,直到我将设备旋转到横向。当我这样做时,弹出框会显示弹出框在 iPhone 横向模式下的正常显示方式。
这是纵向模式下的样子。这正是我想要的样子。
这里是横向模式:
在弹出窗口已经可见时转动设备或在设备转动后将其弹出都没有关系。这是我用来显示弹出窗口的代码。
func adaptivePresentationStyle(for controller: UIPresentationController) -> UIModalPresentationStyle {
return .none
}
@IBAction func showPopUpDate(_ sender: UIButton) {
let popoverVC = storyboard?.instantiateViewController(withIdentifier: "DateTimeSelectorView") as! DateVC
popoverVC.modalPresentationStyle = .popover
popoverVC.preferredContentSize = CGSize(width: 350, height: 350)
popoverVC.labelTag = sender.tag
if sender.tag == 0 {
popoverVC.showType = .date
popoverVC.passedDate = date
}
else {
popoverVC.showType = .time
popoverVC.passedDate = time
}
if let popoverController = popoverVC.popoverPresentationController {
popoverController.permittedArrowDirections = .any
popoverController.sourceRect = CGRect(x: 0, y: 0, width: 20, height: 20)
popoverController.delegate = self
popoverController.sourceView = sender
popoverVC.delegate = self
present(popoverVC, animated: true, completion: nil)
}
}
如何进行设置以使弹出框继续看起来像在纵向模式下一样?
【问题讨论】:
标签: ios xcode uipopovercontroller