2015-01-05 4 views
1

새 프로그래머와 나는 문제가 붙어 있습니다. livesLeft가 0에 도달하면 ViewController에서 NOViewController로 간단히 이동하려고합니다.코드를 사용하여보기 컨트롤러 사이를 이동

(사망하면 "죽음"화면이 나타납니다) 사전에 큰 감사드립니다!

if (livesLeft == 0) 
{ 
    //transit to NOViewController 

} 
+0

if (livesLeft == 0) { NOViewController * NOVC = [[NOViewController alloc] init]; [self presentViewController : NOVC 애니메이션 : 예 완료 :^{ }]; – MrHaze

+0

내 대답을 확인 .. 그게 더 나은 대답이 될 것입니다 ... –

+0

네비게이션 컨트롤러를 사용하고 있습니까? View Controller에 대해 어떤 종류의 진행을 기대합니까? –

답변

0
if (livesLeft == 0) 
{ 
    NOViewController *NoLivesVC = [[UIStoryBoard storyboardWithName: @"Main" setBundle: nil] instantiateViewConrollerWithIdentifier: @"ViewControllerIndentifier"]; 
    // Do something 
    [self presentViewController animated: YES completion:nil]; 

} 

희망이 있습니다. 나는 이것이 당신이 묻고있는 것으로 추정합니다.

+0

답장을 보내 주셔서 감사합니다! 빌드되지 않고 잘못된 메시지가 표시됩니다.이 부분의 "예상 식별자": @ "ViewControllerIndentifier"]; 아이디어가 있습니까? – MrHaze

+0

이것은 View Controller의 식별자를 변경하지 않았거나 둘 다 일치하지 않기 때문일 수 있습니다. 스토리 보드로 가서 표시 할보기 컨트롤러를 선택해야합니다. 그런 다음 오른쪽 사이드 패널에서 "Identity Inspector"를 선택하고 "Storyboard ID"와 "Restoration ID"를 원하는 식별자로 변경하십시오. 위 코드의 경우 ViewControllerIndentifier로 변경합니다. –

0

의미 하시겠습니까?

NOViewController *secondView = [self.storyboard instantiateViewControllerWithIdentifier:@"storyboard_identifier"]; 

[self.navigationController pushViewController:secondView animated:YES]; 
+0

자, 시험해 볼 것입니다! – MrHaze

+0

실제로 수명이 0에 도달하면 충돌이 발생합니다. 어떤 제안을 할 수 있습니까? – MrHaze

+0

스토리 보드 식별자 문자열을 조정 했습니까? – HAS

0

그래요! 임씨는 정말 초보자이므로 아직 내비게이션 컨트롤러에 대해 알지 못했습니다. 하지만 내 문제가 해결되었습니다 :

{ 
    NOViewController *NOVC = [[NOViewController alloc]init]; 
    [self presentViewController:NOVC animated:YES completion:^{ 

    }]; 

답장을 보내 주셔서 감사합니다.

+0

사용자가 화면 위로 게임에서 게임으로 돌아 가게 하시겠습니까? 그렇다면 이전보기 컨트롤러를 다시 사용하거나 새 컨트롤러를 제시 하시겠습니까? –

+0

예. 맞습니다. 동일한보기 컨트롤러를 다시 사용하겠습니다! 사실, 화면 위에있는 게임은 "아니오, 나 감히 뛰지 않습니다."버튼을 클릭하면 시작 화면에서도 표시됩니다. "VC 오버 게임"에서 "시작 화면 VC"로 돌아갈 수 있도록 단추를 추가했습니다. 그러나 "게임보기 컨트롤러"에서 "VC 오버 게임"으로 이동하면 "돌아 가기"단추가 사라졌습니다. – MrHaze

+0

네비게이션 컨트롤러를 사용하면 더 나은 서비스가 될 것입니다. 시작보기 컨트롤러의 루트보기 컨트롤러를 원하는 것처럼 설정이 들립니다. 그런 다음 게임보기 컨트롤러를 밀 수 있습니다. 뷰 컨트롤러 스택은 [Start, Game]이 될 것입니다. 게임이 끝나면보기 컨트롤러를 통해 게임을 상위보기 컨트롤러 아래의 스택에 넣을 수 있습니다. 뷰 컨트롤러 스택은 [Start, Game Over, Game]이 될 것입니다. 그런 다음 탑 뷰 컨트롤러를 띄웁니다. 뷰 컨트롤러 스택은 [Start, Game Over]가됩니다. –