2012-06-14 41 views
0

我是試圖解決我的other question。所以我想也許如果別的聲明可以解決我的問題。如果其他語句中缺少預期表達式

但我想我錯過了預期的表達式,如果其他語句如下。

-(void)playpauseAction:(id)sender 
{ 
    if ([audioPlayer isPlaying]){  
      [sender setImage:[UIImage imageNamed:@"Play Icon.png"] forState:UIControlStateSelected]; 
     [audioPlayer pause]; 
     [self pauseTimer]; 
    } else { 
     [sender setImage:[UIImage imageNamed:@"pause.png"] forState:UIControlStateNormal]; 
     [audioPlayer play]; 
     [self resumeTimer]; 
    } 
    else if 
    { 
     [audioPlayer play]; 
     self.timer = [NSTimer scheduledTimerWithTimeInterval:11.0 
             target:self 
             selector:@selector(displayviewsAction:) 
             userInfo:nil 
             repeats:NO]; 
    }  
} 

任何想法我在這裏做錯了什麼。

謝謝。

回答

1

您需要在else塊之前有else if。並且else if是次要條件,它需要某種類似於正常的if之後的布爾語句,如![audioPlayer isPlaying]。我不確定你想用你的代碼實現什麼,所以我不能再提供更多的建議。

0

你怎麼能如果... else ... elseif?

你的代碼不只是錯誤的順序嗎? 很確定你不能擁有別的其他東西。

if elseif else?

1

使用這種方式

-(void)playpauseAction:(id)sender 
{ 
    if([audioPlayer isPlaying]){  
     [sender setImage:[UIImage imageNamed:@"Play Icon.png"]   forState:UIControlStateSelected]; 
     [audioPlayer pause]; 
     [self pauseTimer]; 
} 
else if(put your condition here) 
{ 
    [audioPlayer play]; 
    self.timer = [NSTimer scheduledTimerWithTimeInterval:11.0 
            target:self 
            selector:@selector(displayviewsAction:) 
            userInfo:nil 
            repeats:NO]; 
} 
else { 
    [sender setImage:[UIImage imageNamed:@"pause.png"] forState:UIControlStateNormal]; 
    [audioPlayer play]; 
    [self resumeTimer]; 
    } 
} 

希望這將幫助你..

+0

通過這樣做,它失去切換功能 – user1452248

+0

沒有你的代碼只是缺少一些東西你的條件不正確,請交叉檢查你的狀況 – Abhishek