Я работаю над приложением, которое размещает надписи городов на верхней панели камеры для дополненной реальности.Когда я открываю камеру, я скрываю панель управления, панель навигации и панель инструментов.Я использую следующий код, который я нашел в Интернете, чтобы изменить размер изображения камеры, чтобы охватить весь экран.У меня только iPhone 7 в ландшафтном режиме.Когда я использую это, высота экрана составляет 320 (а не 375, как должно быть), а длина составляет 677. Как я могу сделать так, чтобы размер экрана соответствовал фактическому размеру экрана телефона, и как я могу изменить его длякаждый другой айфон?Я не могу использовать его в симуляторе, чтобы увидеть, потому что вы не можете использовать дополненную реальность в симуляторе.
picker = [[UIImagePickerController alloc] init];
picker.allowsEditing = NO;
picker.sourceType = UIImagePickerControllerSourceTypeCamera ;
picker.showsCameraControls = NO;
self.picker.navigationBarHidden = YES;
self.picker.toolbarHidden = YES;
if([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone){
CGSize screenSize = [[UIScreen mainScreen] bounds].size; // 320 x 568
float scale = screenSize.width / screenSize.height*5/3; // screen height divided by the pickerController height ... or: 568 / ( 320*4/3 )
CGAffineTransform translate=CGAffineTransformMakeTranslation(0,(screenSize.height - screenSize.width*4/3)*0.5);
CGAffineTransform fullScreen=CGAffineTransformMakeScale(scale, scale);
picker.cameraViewTransform =CGAffineTransformConcat(fullScreen, translate);
Я не понимаю логику этого и думаю, что это изначально для iPhone SE.Если есть учебник, который объясняет это, или если кто-то может объяснить это мне, я был бы очень признателен.Спасибо