我有一个应用程序,它在iOS 12及以下版本中正常运行。我的应用程序仅支持纵向模式。现在在iOS 13中,发生的情况是:如果我打开相机以捕获视频并旋转设备,相机就会旋转,但是当我点击“选择视频”时,我的应用程序也会显示横向旋转。有人知道吗?
我通过在UIImagePickerController
的委托回调中设置纵向方向来解决此问题。仅当我们仅使用视频选项直接打开相机时才出现该问题。如果我们使用“照片和视频”选项打开相机。它工作正常。
- (void)setPortraitOrientation {
[[UIDevice currentDevice] setValue:@(UIInterfaceOrientationPortrait) forKey:@"orientation"];
[UINavigationController attemptRotationToDeviceOrientation];
}
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
[self setPortraitOrientation];
[picker dismissViewControllerAnimated:YES completion:NULL];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[self setPortraitOrientation];
[picker dismissViewControllerAnimated:YES completion:^{
}];
}