Есть ли способ остановить автоматическое вращение в swift для определенного метода?Отключить автоматическое вращение для специального метода в swift?
Хочет, чтобы остановить автоповорот при выполнении методы ViewController ..
Есть ли способ остановить автоматическое вращение в swift для определенного метода?Отключить автоматическое вращение для специального метода в swift?
Хочет, чтобы остановить автоповорот при выполнении методы ViewController ..
Посмотрите на эти методы в UIViewController:
func shouldAutorotate() -> Bool
func supportedInterfaceOrientations() -> UIInterfaceOrientationMask
func preferredInterfaceOrientationForPresentation() -> UIInterfaceOrientation
Таким образом, вы должны создать подкласс «UINavigationController», осуществлять shouldAutorotate и использовать навигационный контроллер класс в вашем раскадровке.
override func shouldAutorotate() -> Bool {
let currentViewController = self.topViewController
if test.isKindOfClass(NewviewController.self) {
return true
}
return false
}
Используйте эти методы в ViewController каждого зрения, который должен быть портрет:
override func shouldAutorotate() -> Bool {
return false
}
override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask {
return UIInterfaceOrientationMask.Portrait
}
сделать один Bool
экземпляр и возвращает его значение в shouldAutorotate
методе вашего ViewController
.
var allowRotate: Bool = true
override func shouldAutorotate() -> Bool {
return allowRotate
}
Теперь установите allowRotate
к false
внутри метода, где вы хотите, чтобы остановить вращение после этого установите его в true
, чтобы его снова.
Пожалуйста, улучшите свой вопрос !! Предоставьте фрагмент кода или четко сформулируйте свои намерения. –
Я установил 'func shouldAutorotate() -> Bool' в true для моего ViewController, и теперь я хочу остановить авто-поворот, когда я нахожусь в определенном методе – mafioso