Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 音频环路数_Iphone_Objective C_Ios6_Xcode4.5 - Fatal编程技术网

Iphone 音频环路数

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

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

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;
    }
}