Xcode 11.1 вид контроллера виден под текущим VC при представлении модально - PullRequest
0 голосов
/ 15 октября 2019

Xcode автоматически обновляется, и теперь мой контроллер представления экрана регистрации отображается под текущим контроллером представления, на который я перешел. См. Скриншот Как я могу это исправить?

Если я создаю переход и выбираю подарок модально с помощью Interface Builder, при запуске приложения теперь я вижу предыдущий экран под текущим,Это никогда не было проблемой до обновления. (Я использую один и тот же фон в приложении, поэтому большинство фонов View Controller настроены прозрачными.)

Кроме того, я думаю, что это связано с тем, когда я просматриваю свою раскадровку в Xcode с представлением, настроенным на использование iPhone8 Плюс он показывает светло-серый прямоугольник с закругленными углами, которого раньше там не было. См. Макет раскадровки Когда я запускаю приложение, кажется, что большинство моих контроллеров представления теперь ограничены этой формой и перестают работать в полноэкранном режиме. См. Этот пример здесь В моем контроллере просмотра настроек используется белый bg, чтобы вам было проще видеть, о чем я говорю. Этот VC раньше был полноэкранным, не сдвинутым вниз и округленным сверху. Есть идеи?

Xcode 11.1 Ориентация на iOS 12.1

1 Ответ

0 голосов
/ 16 октября 2019

В iOS 13, если у вас есть какой-либо сюжет раскадровки, перейдите к раскадровке, и вам необходимо установить для свойства kind значение Present Modally и для свойства Presentation , чтобы Полный экран .

Для программного использования Swift :

let vc = UIViewController()
vc.modalPresentationStyle = .fullScreen 
self.present(vc, animated: true, completion: nil)

Для Objective-C :

UIStoryboard *story = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UIViewController *vc = [story instantiateViewControllerWithIdentifier:@"identifier"];
vc.modalPresentationStyle = UIModalPresentationFullScreen ;
[self presentViewController:vc animated:YES completion:nil];
...