如何删除背景中的第一个ViewController?
How To Remove The First ViewController In The Background?
我有两个视图控制器,第一个视图控制器和第二个视图控制器,当用户从第一个视图控制器切换到第二个视图控制器时,第一个视图控制器仍然可见并位于第二个视图控制器后面。用户可以滑动第一个视图控制器并看到整个第一个视图控制器,然后他们就卡在那里了。我注意到这只发生在 iOS 13.
发布之后
performSegue(withIdentifier: "showSecond", sender: self)
按照以下两个步骤操作:
- 单击您在 Storyboard 上创建的 segue
- 转到属性检查器
- 将演示文稿设置为"Full Screen"
@Maysam 100% 正确!但是您也可以通过以下方式以编程方式执行此操作:
// Go to next View Controller
@IBAction func nextTextVC(_ sender: UIButton) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let nextInfo = storyboard.instantiateViewController(identifier: "socialOptionsIntroViewController")
self.navigationController?.pushViewController(nextInfo, animated: true)
}
有更详细的内容可以回答这个问题。
遵循 Pratik Sodha 的解决方案
let controller = UIViewController()
let navigationController = UINavigationController(rootViewController: controller)
navigationController.modalPresentationStyle = .overCurrentContext
self.navigationController?.present(navigationController, animated: true, completion: nil)
我有两个视图控制器,第一个视图控制器和第二个视图控制器,当用户从第一个视图控制器切换到第二个视图控制器时,第一个视图控制器仍然可见并位于第二个视图控制器后面。用户可以滑动第一个视图控制器并看到整个第一个视图控制器,然后他们就卡在那里了。我注意到这只发生在 iOS 13.
发布之后performSegue(withIdentifier: "showSecond", sender: self)
按照以下两个步骤操作:
- 单击您在 Storyboard 上创建的 segue
- 转到属性检查器
- 将演示文稿设置为"Full Screen"
@Maysam 100% 正确!但是您也可以通过以下方式以编程方式执行此操作:
// Go to next View Controller
@IBAction func nextTextVC(_ sender: UIButton) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let nextInfo = storyboard.instantiateViewController(identifier: "socialOptionsIntroViewController")
self.navigationController?.pushViewController(nextInfo, animated: true)
}
有更详细的内容
遵循 Pratik Sodha 的解决方案
let controller = UIViewController()
let navigationController = UINavigationController(rootViewController: controller)
navigationController.modalPresentationStyle = .overCurrentContext
self.navigationController?.present(navigationController, animated: true, completion: nil)