Как получить доступ к текущему изображению BG? - PullRequest
1 голос
/ 17 января 2012

Я пытаюсь создать кнопку, которая меняет фоновое изображение моего UIView при каждом нажатии.В основном у меня есть 3 изображения в массиве, которые я хочу циклически повторять каждый раз, когда нажимается «Изменить BG».

В настоящее время я использую self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_image.png"]]; в моем viewDidLoad для первой установки моего уровня.

Вопрос в том, когда моя кнопка «Изменить BG» нажата, как мне определить, на что установлена ​​текущая BG?Я пытался использовать выражение if, как это:

if(self.view.backgroundColor == [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_image.png"]])

Но, похоже, это не работает.Я также попытался создать локальную переменную UIColor * bg = self.view.backgroundColor, а затем сравнить ее с bg == [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_image.png"]];, но это тоже не работает.

Любые идеи приветствуются.Спасибо

Ответы [ 2 ]

2 голосов
/ 17 января 2012

Я рекомендую вам сохранить информацию о текущем фоновом изображении в свойстве. (UIImage, NSString или просто тег), чтобы позже, когда вы нажали кнопку, вы могли узнать текущее, которое является текущим bg изображением.

Ответ Бонни работает правильно, но я не рекомендую вам делать это таким образом.

1 голос
/ 17 января 2012

как насчет использования тега.

#define FirstTag 1
#define SecondTag 2
#define ThirdTag 3

при смене первого изображения. установите self.view.tag = FirstTag и т. д.

при нажатии на кнопку просто выяснить тег if (self.view.tag == FirstTag) ...

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