Изменение изображений на кнопках с помощью других кнопок - PullRequest
0 голосов
/ 15 марта 2012

Есть ли способ изменить изображение кнопки, нажав другую кнопку?

У меня есть кнопка Play, которая после нажатия меняет изображение на Пауза и наоборот.

Теперь у меня есть кнопка «Стоп», и мне нужно снова установить изображение кнопки «Воспроизведение» (потому что оно остается с кнопкой «Пауза»).

Есть предложения по этому поводу?

- (IBAction)play:(id)sender 
{
    UIImage *playImage = [[UIImage alloc] initWithContentsOfFile:
    [[NSBundle mainBundle] pathForResource:@"playFinal" ofType:@"png"]];
    UIImage *pauseImage = [[UIImage alloc] initWithContentsOfFile:
    [[NSBundle mainBundle] pathForResource:@"pauseFinal" ofType:@"png"]];

    if ([self.background isPlaying]) 
    {
        [sender setImage:playImage forState:UIControlStateNormal];
        [self.background pause];
    }
    else 
    {
        [sender setImage:pauseImage forState:UIControlStateNormal];
        [self.background play]; 
    }
}

- (IBAction)stop 
{
    UIImage *playImage = [[UIImage alloc] initWithContentsOfFile:
    [[NSBundle mainBundle] pathForResource:@"playFinal" ofType:@"png"]];

    // What has to be done here?

    [self.background stop];
    [self.background setCurrentTime:0];
}

1 Ответ

3 голосов
/ 15 марта 2012

Определите выход для вашей кнопки, например:

@property (nonatomic, strong)  IBOutlet UIButton *playButton;

подключите его к кнопке в конструкторе интерфейсов и затем:

[playButton setImage:playImage forState:UIControlStateNormal];
[self.background stop];
...
...