Como impedir a rotação no iOS 11?

No iOS 11.2, percebo que(BOOL)shouldAutorotate, (BOOL)shouldAutorotateToInterfaceOrientation, (UIInterfaceOrientationMask)supportedInterfaceOrientations etc não são mais chamados.

Como evito a rotação para uma determinada orientação agora?

Posso desativar a rotação no nível de Implantação do destino, mas o que realmente quero é que desative a rotaçãosomente para o iPhone X. Tenho um aplicativo mais antigo sem storyboards e não quero alterá-lo para honrar o ponto bobo da tela no modo paisagem.

Paisagem é útil no meu aplicativo, pois no iPhone você tem um teclado mais amplo no modo paisagem, o que é bom. Caso contrário, removerei a rotação de todos os modelos de iPhone.

Está na documentação paraUIViewController:

"No iOS 8, todos os métodos relacionados à rotação são descontinuados. Em vez disso, as rotações são tratadas como uma alteração no tamanho da visualização do controlador de vista e, portanto, são relatadas usando ..."

e:

"Você pode substituir o preferidoInterfaceOrientationForPresentation .."

mas isso também não é chamado. Não no controlador de exibição raiz, nem em outros controladores de exibição.

Então, como evito a rotação para uma determinada orientação agora, programaticamente?

questionAnswers(1)

yourAnswerToTheQuestion