문제

나는 다른 모든 사용자의 문제 계정을 읽었지만, 나에게 효과가 있거나 '나는 도움을 주셔서 감사합니다.'로 끝나는 결과로 결론을 내리지 않는 것 같습니다. . 다음은 제시하고 해고 할 코드입니다 (모든 주요 개체는 내 응용 프로그램 대의원의 속성입니다. 약 페이지를 가져오고 응용 프로그램으로 돌아 가려고합니다. 내가 무엇을 잘못 했습니까?

현재 모달 VC (Works) :

-(IBAction) showInfoButton: (id) sender {
NSLog(@"%s", __FUNCTION__);

if( aboutViewController == nil ) {
    aboutViewController = [[[AboutViewController alloc] initWithNibName:@"About" bundle:[NSBundle mainBundle]] autorelease];
    [appDelegate.window addSubview: aboutViewController.view];
}

appDelegate.modalNavigationController = [[UINavigationController alloc] initWithRootViewController:aboutViewController];

[appDelegate.modalNavigationController presentModalViewController:appDelegate.modalNavigationController animated: YES];

}

About View Controller (작동하지 않음)의 해고 : :

-(IBAction) dismissAbout: (id) sender {
NSLog(@"%s", __FUNCTION__ );

[self dismissModalViewControllerAnimated:YES];

}

나는 애니메이션 '아니오'를 시도했지만 아무런 차이가 없었습니다. 내 코드를 다른 코드와 일치 시키려고했지만 아무런 차이가 없었습니다. 나는 서클에서 돌아 다니고 있으므로 모든 도움이 감사합니다.

도움이 되었습니까?

해결책

Xcode의 플립 사이드 컨트롤러의 기본 템플릿은 모달 컨트롤러에 대의원이 있어야하는 초기 컨트롤러로 다시 지적해야한다고 제안합니다. 가장 쉬운 것은 Xcode에서 새 프로젝트를 작성하고 유틸리티 애플리케이션을 선택하고 코드를 살펴 보는 것입니다.

요컨대, 이것은 당신의 코드 여야합니다. 메인 화면 제어 장치

- (IBAction)showInfo;
{    

    InfoScreen * aboutViewController = [[InfoScreen alloc] initWithNibName:@"InfoScreen" bundle:nil];
    aboutViewController.delegate =self;

    [self presentModalViewController: aboutViewController animated:YES];

    [aboutViewController release];
}

- (void)flipsideViewControllerDidFinish;
{

    [self dismissModalViewControllerAnimated:YES];
}

그리고 이것은 당신의 백 버튼의 동작 화면 정보:

- (IBAction)done {
    [self.delegate flipsideViewControllerDidFinish];
    self.delegate = nil;
}

Delegate가 FlipsideViewControllerDidFinish 등에 응답하기 위해 Code에 조금 더 있습니다. .

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top