viewController X (초기보기가 아님)가 있습니다. X는 여러 부모의 childViewController입니다 (여러 viewController는 X가 자식으로 있습니다.) X에는 레이블, 테이블 및 탐색 막대가 있으며 왼쪽 막대 버튼이 부모로 팝업됩니다. 앱이 정상적으로 시작되면 모든 segues, popToParentViewController, 뒤로 버튼이 제대로 작동합니다. 그러나 푸시 알림에서 앱을 시작하는 경우 X는 탐색 모음 및 버튼 (기능하지 않음)과 표보기만으로 나타납니다.푸시 알림에서 시작할 때 viewController의 모든 객체 초기화
레이블이 표시되지 않는 이유를 모르겠습니다. 뒤로 버튼이 "뒤로"이동하지 않습니다. 나는 그것이 "no parent"와 관련이있다는 것을 알고있다. 왜냐하면 나는 코드 아래의 아래에 "루트"로 설정했기 때문이다.
코드로 원하는 것을 어떻게 구현할 수 있습니까? 다음
는 appDelegate.m에- (void) application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
if (application.applicationState == UIApplicationStateInactive || application.applicationState == UIApplicationStateBackground )
{
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard"
bundle: nil];
NotificationsViewController *viewController= [mainStoryboard instantiateViewControllerWithIdentifier:@"NotificationsViewController"];
UINavigationController *nav = [[UINavigationController alloc]
initWithRootViewController:viewController];
[_window setRootViewController:nav];
}
}
여러 푸시 뷰 컨트롤러 : 애니메이션 : 다른 애니메이션 푸시/풀 작업 중에 무언가를 당기거나 밀 때 UINavigationController가 이상한 글리치를 가지고 있기 때문에 위험합니다. setViewController를 사용하는 것이 훨씬 더 좋습니다. 애니메이션 : –
appDelegate에서 어떻게 할 수 있습니까? @MaksymilianWojakowski 나는 자기를 생각하지 않는다 .window setViewControllerers : animated works – user3178926