내 앱에 사용자가 이미 Facebook에 로그인했는지 확인하는 스플래시 화면이 있습니다. 그렇지 않은 경우 스플래시 화면이 로그인 화면을 탐색 스택으로 푸시합니다. 사용자가 로그인하면 스플래시 화면도 로그인 화면을 푸시하지만 로그인 화면의 viewDidAppear에서 기본 앱 화면을 푸시하는 메소드를 호출합니다. 이 흐름은 그러나 아이폰 OS 9 및 iOS (10)에 문제없이performSegue가 Xcode 9 (및 iOS 11) 업데이트 이후 작동하지 않습니다.
근무
SplashViewController > LoginViewController > MainViewController.
: 사용자가 I 로그인 할 때
그래서, 컨트롤러는 내 응용 프로그램 스택에 다음 뷰를 볼 수 내가 iOS 11로 업그레이드 한 이후로이 흐름이 멈췄습니다.
사용자가 로그인 한 상태에서 기본보기 컨트롤러가 나타나지 않으면 로그인보기 컨트롤러 만 계속 표시됩니다. 디버거에서 주 앱 화면에 performSegue가 실제로 호출되었는지 확인했습니다.
두 가지 이상한 세부 사항이 있습니다. 첫 번째는이 로그인보기 컨트롤러의 버튼이 더 이상 작동하지 않는다는 것입니다 (FacebookLogin SDK에서 Facebook 로그인 흐름을 호출하는 버튼이 있음).
두 번째는 Xcode에서 "디버그 뷰 계층 구조"버튼을 클릭하면 Xcode가 처리되고 뷰 계층을 생성하는 동안 주 뷰 컨트롤러가 갑자기 응용 프로그램에 나타납니다.
메인보기 컨트롤러가 밀려 있지만보기가 표시되지 않는 것 같습니다. LoginViewController의 segues가 더 이상 작동하지 않습니다. 그러나 "Debug View Hierarchy"를 누르면 뷰 계층 구조를 업데이트하는 것으로 간주됩니다.
Xcode 9.0.1을 사용하고 있습니다. 이 문제는 Xcode 시뮬레이터와 현재 iOS 11.0.3을 실행중인 iPad Mini 2에서 발생합니다.
감사합니다.
저도 같은 문제를 가지고있는 것 같습니다,하지만 난 KYDrawerController을 사용하고 있습니다. KYDrawerController를 제거하면 메뉴가 없어져서 잘 동작합니다. – jackofallcode