2011-04-01 4 views
1

예상되는 동작은 재생 동작을 클릭하면 이미지를 재생에서 일시 중지 및 일시 중지에서 재생으로 변경하는 것입니다. 이것은 버전 4.x에서 예상대로 작동합니다. 버전 3.2에서는 setImage가 작동하지 않아 setImage가 이미지를 설정하지 않는다는 의미입니다. imageForState 호출 : UIControlStateNormal은 3.2 버전에서 null을 반환합니다. 어떤 아이디어?setImage : forState : iOS 3.2에서 작동하지 않습니다.

@interface TestViewController : UIViewController { 
    IBOutlet UIButton *playButton; 
    BOOL play; 
} 

- (IBAction) play:(id)sender; 

@end 


@implementation TestViewController 

- (IBAction) play:(id)sender { 
    if (play == YES) { 
    [playButton setImage:[UIImage imageNamed:@"pause"] forState:UIControlStateNormal];  
    play = NO; 
    } else { 
    [playButton setImage:[UIImage imageNamed:@"play"] forState:UIControlStateNormal];  
    play = YES; 
    } 
    //[playButton imageForState:UIControlStateNormal] 

} 

@end 
+0

확장자 (예 :'@ "play.png"')를 포함하면 어떻게됩니까? –

답변

0

코드가 정확한 것처럼 보입니다. 버튼에 대한 XIB 파일에 IBOutlet을 연결했는지 확인 했습니까? 당신이 당신의 기대에 따라 작동합니다

[UIImage imageNamed:@"pause.png"] or [UIImage imageNamed:@"pause.jpg"] 

코드에 코드

[UIImage imageNamed:@"pause"] 

을 변경하는 경우

0

UIImageimageNamed는 확장 즉와 이미지 이름에 걸립니다.