2011-01-20 5 views
0

앱에서 일부 초기화를 수행하고있는 상황이 있습니다. 최초 시동시 동의 함/동의하지 않음 단추 선택으로 EULA를 제시해야합니다. 동의 함 선택이되면 사용자 이름과 암호를 묻는 모달보기를 표시합니다. 이 모든 것이 잘 작동합니다. 문제는 사용자 이름과 암호가 확인되고 모달보기가 닫힌 후입니다. 앱의 기본 표보기가 아닌 화면에 여전히 EULA보기가 표시되어 있습니다. 나는 최종 사용자 사용권 계약에의 ViewController 코드에서 다음을 수행하십시오iOS 이전 서브 뷰를 숨기는 방법

- (IBAction)didAgree:(id)sender { 
    LoginViewController *lvc=[[[LoginViewController alloc] init] autorelease]; 
    lvc.modalTransitionStyle=UIModalTransitionStyleCoverVertical; 
    [self presentModalViewController:lvc animated:YES]; 
    [self.view removeFromSuperview]; 
} 

나는 물론, 로그인보기가 표시되지 않습니다, 다음 presentModal 호출하기 전에에 마지막 줄 (removeFromSuperview)를 이동합니다. 로그인 버튼을 누른 후 로그인 뷰 컨트롤러의 코드에서

나는이 있습니다

[[self parentViewController] dismissModalViewControllerAnimated:YES]; 
[[self parentViewController].view removeFromSuperview]; 

나는이 코드를 실행하면, 모달 뷰가 사라지고 테이블보기는 EULA보기로 사라지기 전에 잠시 나타납니다 화면에 남아 있습니다. 두 번째 구문을 주석 처리하면 테이블 뷰가 표시되지 않습니다.

저는이 사실을 알고 있습니다. 저는 매우 놀라운 것을 놓치고 있습니다. 그러나 나는 아주 상실감에 빠졌습니다.

답변

2

나는 문제가 여기에있다 생각 :이

[self presentModalViewController:lvc animated:YES]; 

주로 self. 즉, self에서 로그인 화면을 모달로 표시합니다 : EULA-ViewController. 지금 EULA 화면을 제거 할 수 없습니다.

먼저 로그인 화면을 표시하고, 회색으로 표시되거나 전혀 표시되지 않을 수도 있고, 모 듈을 모달로 표시하는 것이 좋습니다.

+0

좋은 소리입니다. 시도해 볼게. – mlewis54

+0

업데이트 : 그 트릭, 감사합니다. 로그인 화면을 표시 한 다음 즉시 EULA 화면을 모달리 표시했습니다. 동의하면 로그인 화면에서 빠져 나옵니다. 저장 및 로그인시 기본 화면을 벗어나 버립니다. – mlewis54

관련 문제