2014-01-29 2 views
2

나는 다트를 배우려고 노력 중이며 아래의주기적인 타이머로 문제가 발생합니다.Timer.periodic 콜백 매개 변수 유형

void changeImage(){ 
    imgUrl = images.elementAt(count++); 
} 

startPeriodic(sec){ 
    return new Timer.periodic(new Duration(seconds:sec), changeImage); 
} 

편집기는 말한다 : 인수 유형 'changeImage이'매개 변수 유형 '무효 → (타이머)'

이 평가 될 것입니다 밖으로 다트 - 마에스트로에서 어떤 제안에 할당 할 수 없습니다.

답변

5

Timer API에 따르면, 콜백 유형 Timer의 매개 변수를 수신하므로 콜백 메소드는 다음과 같이한다 :

void changeImage(Timer t){ 
    imgUrl = images.elementAt(count++); 
} 

이 그냥 매개 변수없이 콜백 소요 new Timer()를 사용하는 것과 다릅니다 . 그 이유는 더 이상 필요하지 않으면 콜백 메소드에서 Timer를 취소 할 수 있기 때문입니다.

+0

물론! 감사! – burktelefon