在 iOS 13 中,当我们呈现一个新的 ViewController 时
let newVC = NewViewController()
self.present(newVC, animated: true)
它如下所示,但不是全屏,可以向下滑动以移回启动的 ViewController
要使其全屏显示,我们可以使用.fullScreen
如下所示。
let newVC = NewViewController()
newVC.modalPresentationStyle = .fullScreen
self.present(newVC, animated: true)
它将如下所示,全屏显示。但是,它不允许我再向下滑动以返回父级。
有没有办法在全屏打开的情况下向后滑动并返回父级?
您可以尝试以下示例:
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
//Button is added via storyboard
@IBAction func presentButtonDidTap(_ sender: UIButton) {
let vc = NewViewController()
vc.modalPresentationStyle = .fullScreen
present(vc, animated: true)
}
}
class NewViewController: UIViewController {
override func viewDidLoad() {
self.view.backgroundColor = .gray
let gesture = UISwipeGestureRecognizer(target: self, action: #selector(dismissVC))
gesture.direction = .down
view.isUserInteractionEnabled = true // For UIImageView
view.addGestureRecognizer(gesture)
}
@objc
private func dismissVC() {
dismiss(animated: true)
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)