Изменение UIImageView с помощью кнопки - PullRequest
1 голос
/ 30 марта 2012

Я хочу нажать кнопку и переключаться между двумя изображениями с помощью одного UIImageView.

Прямо сейчас, когда я его запускаю, нажимаю кнопку, изображение меняется, но обратно не изменится. Что мне нужно изменить в этом коде действия, чтобы сделать его альтернативным?

- (IBAction)Change:(id)sender {
   image.image = [UIImage imageNamed:@"car.png"];

}

Ответы [ 3 ]

4 голосов
/ 30 марта 2012

Попробуйте следующий код:

- (IBAction)Change:(id)sender {

        if ([sender isSelected]) 
        {  
          imageView.image = [UIImage imageNamed:@"car.png"];
          [sender setSelected:NO];  
        }
        else 
        {     
          imageView.image = [UIImage imageNamed:@"bike.png"];
          [sender setSelected:YES]; 
        }
}

Для отображения последовательности изображений при нажатии кнопки.

.h file:

int counter;

.mfile:

in viewDidLoad initialize counter = 0

Затем

- (IBAction)Change:(id)sender {  
     counter++;
     imgView.image = [UIImage imageNamed:[NSString stringWithFormat:@"%d.png",counter]];
}

И присвойте своему изображению имя, например 1.png, 2.png, 3.png ии так далее ...

1 голос
/ 30 марта 2012

Вы должны поддерживать флаг.

В Somewhere перед тем, как нажать кнопку, присвойте флаг

  BOOL isFirstImageShown=YES;

Тогда на твоей кнопке действие

- (IBAction)Change:(id)sender {
   if(isFirstImageShown)
   {
      isFirstImageShown=NO;
      yourImageView.image = [UIImage imageNamed:@"yourSecondImage.png"];
   }
   else
   {
     isFirstImageShown=YES;
     yourImageView.image = [UIImage imageNamed:@"yourFirstImage.png"];
   }
}
0 голосов
/ 30 марта 2012

Вы хотите, чтобы при нажатии кнопки вам понадобилось другое изображение, которое вы должны сначала установить, когда вы загружаете представление, а затем при нажатии кнопки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...