iOS представляет и отклоняет модальный контроллер представления через вращение устройства
Я написал фрагмент кода в проекте, чтобы обнаружить вращение устройства, отправив уведомление UIDeviceOrientationDidChange, я нахожусь в TradeViewController всякий раз, когда пользователь поворачивает устройство в альбомной ориентации, он должен представлять контроллер модального вида сверху, который называется (SwipingViewController), а в портретном режиме должен отклонить этот модальный режим и вернуться к предыдущему контроллеру, который считается моим presentViewViewController с именем (TradeViewController), проблема в том, что этот код работает правильно, но при повороте портрета он не представляет чистый и приятный переход за секунду, который он показывает беспорядок отклонения вершины и представления предыдущего представления вместе, и этот переход показывается пользователю, который не красив, я мог бы пропустить кое-что в этом переходе! только tradeViewController встроен в контроллер навигации. Я пытался представить новое представление различными способами, такими как popViewController navigationController, но я не смог получить чистый переход, когда пользователь поворачивает устройство назад в портретном режиме. Вот код
@objc func deviceOrientationDidChange(_ notification: Notification) {
let storyboard = UIStoryboard(name: "Trade", bundle: nil)
if UIDevice.current.orientation.isLandscape {
if let swipingImageController: SwipingImageController = storyboard.instantiateViewController(withIdentifier: "SwipingImageController") as? SwipingImageController {
self.present(swipingImageController, animated: true, completion: nil)
}
} else if let controller = presentedViewController as? SwipingImageController {
controller.dismiss(animated: true, completion: nil)
}
}