2013-04-10 2 views
2

그래서 여기에 문제가 있습니다. 나는 내 게임을위한 타이머를 만들려고 노력하고 있지만 그것은 나던 것처럼 보입니다.NSTimer가 uibutton에 응답합니다.

@property (nonatomic) NSTimer gameTimer; 

과 합성 :

난 nstimer 대한 속성을 시작

다음
@synthesize gameTimer = _gameTimer; 

I가 설정이 방법을 사용

-(NSTimer *) gameTimer{ 
    if (_gameTimer == nil) _gameTimer = [[NSTimer alloc]init]; 
    return _gameTimer; 
} 

을 그러나 때 uibutton을 통해 타이머를 시작하십시오 :

- (IBAction)play:(UIButton *)sender { 

    _levelNumber = 1; 
    _en1v = -1; 
    _en2v = 1; 
    _en3v = -1; 
    [self setPath]; 
    _gameTimer = [NSTimer timerWithTimeInterval:1.0 target:self  selector:@selector(onTimer:) userInfo:nil repeats:YES]; 
    self.play.hidden = TRUE; 
} 

작동하지 않습니다.

나는 onTimer : 메서드에 nslog를 넣었고 타이머가 어떤 방식으로 실행되지 않고 있다는 것을 알았습니까?

나는 명백한 실수를하고 있습니까?

답변

1

타이머를 전혀 시작하지 않았습니다.

사용 :

_gameTimer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(onTimer:) userInfo:nil repeats:YES]; 

및 중지 동안

이 ( stop: 방법에있을 수 있습니다)

[_gameTimer invalidate]; 
_gameTimer = nil; 
+0

아, 감사합니다. 나는 예정된 타이머를 사용하지 않고있다. –

+0

당신은 오신 것을 환영합니다. ** 도와 드리겠습니다. * –

+0

'[_gameTimer fire];를 써서'timerWithTimeInterval ... '을 유지할 수도 있습니다. – Milo