Iphone 音频环路数
当第一次点击repeat按钮时,它应该运行无限次,当第二次点击时,它不应该重复音频,而应该停止循环。下面是代码,它第一次工作得很好,但当再次按下它时,它并没有停止循环Iphone 音频环路数,iphone,objective-c,ios6,xcode4.5,Iphone,Objective C,Ios6,Xcode4.5,当第一次点击repeat按钮时,它应该运行无限次,当第二次点击时,它不应该重复音频,而应该停止循环。下面是代码,它第一次工作得很好,但当再次按下它时,它并没有停止循环 BOOL isFirstTime; @interface English : UIViewController <UITextViewDelegate, ADBannerViewDelegate, UIScrollViewDelegate, -(void) RepeatAction:(id)sender{ if(isF
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;
}}
BOOL是第一次;
@界面英语:UIViewController向我们显示您在哪里设置布尔值,并运行循环。在界面之前在h文件中定义布尔值,并在viewdidload的m文件中设置isFirstTime=YES;我看不到您将isFirstTime设置为否的任何点。因此,当然您的循环将继续运行。向我们展示您正在设置布尔值的位置,并运行循环。在接口之前在h文件中定义Bool,并在viewdidload中在m文件中设置isFirstTime=YES;我看不出你把isFirstTime设置为否的任何点。所以你的循环当然会继续运行。
-(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;
}
}