2015-01-04 2 views
0

그래서 버튼을 눌러 장면을 전환하는 방법을 알아 내려고 정말 고심하고 있습니다. 기본적으로 "Start Game"버튼을 만들고 싶습니다. Google 답변이 많으며 도움이되는 사람이 없습니다. 구문 오류가 있거나 앱이 다운됩니다. 어쨌든, 내가 여기에있다. 나는 내 버튼을 올바르게 만드는 gameviewcontroller를 가지고 있으며, 버튼을 눌렀을 때 (콘솔에 글자를 인쇄하는 것과 같은) 메소드와 성공적으로 통신한다. 이제 내 Title.m (I가 시작 장면)에서, 나는 방법과 같이 있습니다클릭시 장면을 전환하는 버튼

-(void) gScene { 
    GameScene* gameScene = [[GameScene alloc] initWithSize:self.size]; 
    [self.view presentScene:gameScene]; 
} 

나는 또한 GameViewController로 가져 내 Title.h에 방법이있다. 내 GameViewController에서 버튼 누르기와 연결된 메서드를 startGame이라고합니다. 이것은 게임 시작과 같습니다 :

-(void)startGame { 
    Title* title = [[Title alloc] init]; 
    [title gScene]; 
} 

씬이 내 타이틀에서 내 GameScene으로 전환하기를 원합니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

+0

인터페이스로보기 컨트롤러를 초기화해야합니다. 너 펜이나 스토리 보드를 사용하고 있습니까? –

답변

0

만약 사용 펜촉 :

GameScene *vc = [[GameScene alloc] init]; 
[self presentViewController:vc animated:YES completion:nil]; 

만약 사용하여 스토리 보드 :

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"YOUR_STORYBOARD_NAME" bundle:nil]; 
GameScene *vc = [storyboard instantiateViewControllerWithIdentifier:@"IDENTIFIER_OF_IB_VC"]; 
[self presentViewController:vc animated:YES completion:nil]; 

프로그램 장면을 생성하는 경우 (Apple Documentation)

UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
    levelViewController = [[LevelViewController alloc] init]; 
    window.rootViewController = levelViewController; 
    [window makeKeyAndVisible]; 

귀하의 문제는 "self.size에있다 "프레임의 범위를 설정하는 데 사용하는 코드입니다. 세 번째 예제가 도움이 될 것입니다. rs

+0

나는 모든 것을 프로그래밍 방식으로 만들었습니다. 나는 펜촉이나 스토리 보드를 사용하지 않았습니다. 나는 그 답변을 고맙게 여긴다. 그러나 아직도 약간 길을 잃는다. –

+0

응답 해 주셔서 감사합니다.하지만 게시 한 프로그래밍 방식으로 생성 된 장면 코드를 적용하는 방법은 아직 확실하지 않습니다. gScene 메서드에서 코드 (또는 내 프로젝트에 적용된 코드)를 넣을 것인가, 아니면 startGame 메서드에 넣고 gScene 메서드를 완전히 생략해야합니까? 이것은 내가 시도하는 것입니다 : UIWindow * window = [[UIWindow alloc] initWithFrame : [[UIScreen mainScreen] bounds]]; levelViewController = [[Title alloc] init]; window.rootViewController = levelViewController; [window makeKeyAndVisible]; –

+0

위의 서식을 사용하여 죄송합니다. ctrl k (또는 해당하는 Mac 또는 명령 k)가 작동하지 않습니다. 어쨌든, 나는 그것을 시도하고 문제가 : levelViewController 선언되지 않은 식별자 및 UIViewController 함께 호환되지 않는 형식 인 제목입니다. Title을 GameViewController와 호기심, 그리고 같은 문제로 대체합니다. 코드를 적용하는 방법을 잘 모르겠습니다. 설명서를 읽었습니다. –