2014-02-25 5 views
0

그래서 NO로 canDisplayBannerAds을 설정하더라도 내 게임 내 장면을 시작할 때 내보기 컨트롤러의 부하 내가 adBanner 요청을 전송하기 시작 ..일시 중지 말게 요청 문제

- (void)viewDidLoad{ 

    [super viewDidLoad]; 

    self.canDisplayBannerAds = YES; 

} 

하지만 오류가 발생하는 경우 ... 오류가 디버깅

- (IBAction)startGame:(id)sender { 

    NSLog(@"Start Game triggered"); 
    adBanner.hidden = 1; 
    self.canDisplayBannerAds = NO; 

    // Configure the view. 
    // Configure the view after it has been sized for the correct orientation. 
    skView = (SKView *)self.view; 
    if (!skView.scene) { // the error happens during this if statement 
     skView.showsFPS = YES; 
     skView.showsNodeCount = YES; 

     // Create and configure the scene. 
     theScene = [TCAMyScene sceneWithSize:skView.bounds.size]; 
     theScene.scaleMode = SKSceneScaleModeAspectFill; 

     theScene.delegate = self; 
     // Present the scene. 
     [skView presentScene:theScene]; 

    } 
} 

오류를 통해 시작되는 곳 나는 댓글을 달았 : 응용 프로그램을 종료

인해 캐치되지 않는 예외 'NSInvalidArgumentException'로, 이유 : '- [UIView 장면] : 인스턴스 0x16d252a0로 전송 된 인식 할 수없는 선택자'

무엇이 문제입니까? 어떻게 해결할 수 있습니까?

답변

1

보기 컨트롤러의 self.view 속성은 SKView가 아니며 UIView입니다. 뷰 컨트롤러보기로 광고 배너보기를 지정했거나 동일한 뷰 컨트롤러에서 iAd를 사용하여 SKView를 바꾸거나 사용자의 Sprite Kit 스토리 보드 파일에서 SKView를 사용하지 않을 수 있습니다.

+0

귀하의 권리는 SKView를 대체하기 때문에 다음과 Im을 추가했습니다. 고마워! skView = (SKView *) self.originalContentView; – 4GetFullOf

관련 문제