2012-07-10 3 views
0

사용자가 UIButton1(rewind button)을 클릭하면 다른 UIButton2(playbutton)UIImage을 변경해야합니다. 어떻게하면 돼? 다른 UIButton을 클릭 할 때 UIButton의 UIImage 변경

UIButton *rewindButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
[rewindButton addTarget:self action:@selector(rewind:) forControlEvents:UIControlEventTouchUpInside]; 
rewindButton.frame = CGRectMake(0, 0, 38, 38); 
UIImage *imge = [UIImage imageNamed:@"Rewind Icon .png"]; 
[rewindButton setImage:imge forState:UIControlStateNormal]; 
UIBarButtonItem *rewind = [[UIBarButtonItem alloc] initWithCustomView:rewindButton]; 

-(void)rewind:(id)sender{ 
audioPlayer.currentTime = 0; 
[timer invalidate]; 
ContainerViewController *viewController = [[[ContainerViewController alloc] init]autorelease]; 
viewController.view.frame = CGRectMake(0, 0, 320, 480); 
[self.view addSubview:viewController.view]; 
[self.view addSubview:toolbar]; 
self.timer = [NSTimer scheduledTimerWithTimeInterval:11.0 
            target:self 
            selector:@selector(displayviewsAction:) 
            userInfo:nil 
            repeats:NO]; 
} 

//Add Play Button 

_playButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
[_playButton addTarget:self action:@selector(playpauseAction:) forControlEvents:UIControlEventTouchUpInside]; 
_playButton.frame = CGRectMake(0, 0, 38, 38); 
[_playButton setImage:[UIImage imageNamed:@"Play Icon.png"] forState:UIControlStateNormal]; 
[_playButton setImage:[UIImage imageNamed:@"52.png"] forState:UIControlStateSelected]; 
UIBarButtonItem *play = [[UIBarButtonItem alloc] initWithCustomView:self.playButton]; 


-(void)playpauseAction:(id)sender { 
if([audioPlayer isPlaying]) 
{ 
    [sender setImage:[UIImage imageNamed:@"Play Icon.png"] forState:UIControlStateSelected]; 
    [audioPlayer pause]; 
    [self pauseTimer]; 
    [self pauseLayer:self.view.layer]; 

}else{ 
    [sender setImage:[UIImage imageNamed:@"pause icon.png"] forState:UIControlStateNormal]; 
    [audioPlayer play]; 
    [self resumeTimer]; 
    [self resumeLayer:self.view.layer]; 
    if(isFirstTime == YES) 
    { 
     self.timer = [NSTimer scheduledTimerWithTimeInterval:11.0 
              target:self 
              selector:@selector(displayviewsAction:) 
              userInfo:nil 
              repeats:NO]; 
     isFirstTime = NO; 
    } 
    } 
    } 

사용자가 UIButton1(rewind button) 요구 사항을 클릭

는 pauseicon.png에 icon.png 게임에서 다른 UIButton2(play button)UIImage을 변경하는 것입니다.

어떻게 할 수 있습니까?

아이디어가 없습니다.

답변

2

버튼의 이미지 설정이 작동하지 않습니까?

-(void)rewind:(id)sender{ 
    [_playButton setImage:[UIImage imageNamed:@"pause icon.png"] forState:UIControlStateNormal]; 
    //... 
} 
+0

어떻게하면 재생 단추가 이러한 단계를 수행 할 수 있습니까 [audioPlayer play]; [self resumeTimer]; [self resumeLayer : self.view.layer]; 되감기 버튼이 재생 버튼의 UIImage를 바꿀 때 [_playButton setImage : [UIImage imageNamed : @ "pause icon.png"] forState : UIControlStateNormal]; 되감기 버튼이 재생 버튼의 영상을 일시 정지시키고 사용자가 일시 정지하려고 할 때, 그리고 사용자가 그것을 다시 시작할 때 재생 버튼이 다음의 단계를 수행해야한다는 것을 의미합니다. [audioPlayer play]; [self resumeTimer]; [self resumeLayer : self.view.layer]; – user1452248

+0

_playButton은 이미 해당 단계를 수행하는 playpauseAction : 메서드에 연결되어 있습니다. 되감기에서 재생 버튼 이미지를 설정하는 대신 되감기를 시도 할 수 있습니다 : {[audioPlayer pause]; audioPlayer.currentTime = 0; [self playpauseAction : _playButton]; // ...} – thelaws

관련 문제