2014-04-30 3 views
1

를로드되지 볼 수 긴장? -> (3) HomeView | else (2) 로그인보기아이폰 OS 내가 조금 문제가 앞에있어

그래서 로그 할 때 집보기로 이동합니다. 그리고 로그 아웃 할 때, 나는 그것으로부터 왔기 때문에 로그인 뷰를 풀 수있다. 내가 로그인보기에서 전달하고 집보기로 직접 리디렉션하지 않는 경우

하지만, 나는 때 로그 아웃보기 로그인 긴장을 풀 수 없습니다.

누군가가 해결책을 알고 있습니까?

답변

1

난 그냥 여기 내 논리를 넣어. DummyViewController'sviewWillAppear 방법 방금 ​​viewWillAppear에없는 이상을 코드를 작성할 필요가 DummyViewController에서는

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 

    if(login == YES) 
    { 
     //go to home screen 
    } 
    else 
    { 
     // go to login screen 
    } 
} 

같은 논리를 넣어. 당신이 로그 아웃하려면 그럼 그냥 로그인 상태에 따라 화면을 관리합니다

[self.navigationController popToRootViewControllerAnimated:YES]; 

그리고 DummyViewControllerviewWillAppear 메서드를 호출합니다.

+0

나는 그것을 시도했지만 rootviewcontroller에 갈 것이고, 후에, LoginView에서 잘 리다이렉트한다. 좋아. 그러나 LoginView로 직접 리디렉션 할 수있는 방법이 없습니까? – Aymenworks

+0

여러 가지가 있지만 위의 트릭을 생각하면 로그인과 로그 아웃 사이를 쉽게 관리 할 수 ​​있습니다 :) – iPatel

+0

로그인 화면이나 로그 아웃 화면이 표시되면 멋진 애니메이션으로 관리 할 수 ​​있습니다. – iPatel

0

로그 아웃 완료시 NSNotificationCenter을 사용하여 루트 클래스에 알릴 수 있습니다. 당신은 UINavigationController를 사용하는 경우 다음 그냥

-(void)logoutNotification 
{ 
logout = YES; 
} 

-(void)viewDidAppear:(BOOL)animated 
{ 
    if (logout) 
    {   
     AuthController * auth = [[AuthController alloc] init]; 

     [self presentViewController:auth animated:NO completion:^{ 

     }]; 

     logout = NO; 

     auth = nil; 
    } 
} 
0

아래 어쩌면 그것을 할 수있는 비트 더미 방법 등 NavigationController'sRootViewController에 로그인 컨트롤러를 제공하지만, 당신은 단순히 항상을로드 할 수 있습니다, 당신의 rootViewController

에 팝업 로그인보기 및 그것에 위임하면 "로그인 했습니까?" 검사. 당신은 그것을 숨길 수 있습니다 또는 대기 기호 또는 뭐든간에 ...이 방법은 당신이 이미 로그 아웃했을 때로드했습니다.

코드를 보지 않고서는 어떻게 할 수 있는지 보여 줄 수는 없지만 논리가 충분하다고 생각합니다./
테이크 앱 rootViewController로, 같은 같은 DummyViewController을 하나 개의 ViewController를 추가