Sceneview замерзает, когда присутствует контроллер веб-представления - ios


1

Я использую Safari Services kit для представления веб-представления при нажатии SCNode. Однако, когда я возвращаюсь из safariVC в свой VC с помощью sceneView, sceneView заморожен, хотя я перезапускаю сеанс, перезапустив сеанс.

Я прочитал на этом веб-сайте, что представление другого VC убивает поток сцены, и я просто хотел бы подтвердить. В принципе, я хочу знать, можно ли представить другой VC и иметь возможность вернуться к sceneView и "возобновить" scenView

Замечания:

  • VC = ViewController

Код

Как я представляю свой веб-сайт сафари

func presentWebView(){
    if let url = URL(string: "https://www.amazon.com/"){
        let safariVC = SFSafariViewController(url: url)
        self.present(safariVC, animated: true, completion: nil)
    }
}

Как перезапустить сеанс

if let worldSessionConfig = sessionConfig as? ARWorldTrackingSessionConfiguration {
    worldSessionConfig.planeDetection = .horizontal
    session.run(worldSessionConfig, options: [.resetTracking, .removeExistingAnchors])
}
Источник
  •  23
  •  2
  • 9 мар 2020 2020-03-09 15:03:29

2 ответа

2

Используйте sceneView.session.pause() когда вы представляете safariVC, а затем используйте sceneView.session.run для перезапуска сеанса, когда safariVC отклоняется.

2

Используйте sceneView.session.pause() когда вы представляете safariVC, а затем используйте sceneView.session.run для перезапуска сеанса, когда safariVC отклоняется.