1

当第一次点击重复按钮时,它应该运行无限次,当第二次点击它时,它不应该重复音频,而是应该停止循环。. 下面是它第一次运行良好的代码,但是当再次按下它时,它并没有停止循环。

BOOL isFirstTime;

@interface English : UIViewController <UITextViewDelegate, ADBannerViewDelegate, UIScrollViewDelegate,

-(void) RepeatAction:(id)sender{

if(isFirstTime == YES){

     player.numberOfLoops = -1;


} else {

    player.numberOfLoops = 0;
}

}

- (void)playAction:(id)sender
{
    if([player isPlaying])
    {
        [sender setImage:[UIImage imageNamed:@"1play.png"] forState:UIControlStateSelected];
        [player pause];

    }else{
        [sender setImage:[UIImage imageNamed:@"audiopause.png"] forState:UIControlStateNormal];
        [player play];
        slidertimer = [NSTimer timerWithTimeInterval:1.0 target:self selector:@selector(updateProgressBar:) userInfo:nil repeats:YES];

        [[NSRunLoop mainRunLoop] addTimer:slidertimer forMode:NSRunLoopCommonModes];
        timer = slidertimer;


    }}

感谢帮助。

4

1 回答 1

1
-(void) RepeatAction:(id)sender{
    if(isFirstTime){  // even here you need not to compare with == YES
         player.numberOfLoops = -1;
         isFirstTime = NO;
    } else {
        player.numberOfLoops = 0;
        isFirstTime = YES;
    }
}
于 2013-02-08T14:35:33.487 回答