Изображение кнопки как условное? - PullRequest
2 голосов
/ 24 июня 2011

Я пытаюсь создать условие, которое спрашивает об изображении кнопки.Вот что у меня есть:

    if (buttonName.image == [UIImage imageNamed:@"ButtonImage.png"])

Этот код работает нормально, если объект buttonName является UIImageView, но в качестве UIButton я получаю сообщение об ошибке «запрос элемента image» в чем-то, не являющемся структурой или объединением ».

Как я могу создать это условие?

1 Ответ

1 голос
/ 24 июня 2011

== проверяет равенство указателей, поэтому обычно я рекомендую использовать isEqual:, который работает на NSObjects, но это может не сработать для UIImage (хотя UIImage наследуется от NSObject, поэтому дайте это пошло).

Если это не удастся, вы можете попробовать использовать CGImage свойство UIImage. Это исходные данные изображения Quartz, поэтому вы сможете определить, имеют ли два изображения одинаковый CGImage (опять же, использование == не будет работать, но isEqual может).

Одним из способов решения этой проблемы является использование свойства tag UIButton, но для этого требуется всего int с, поэтому вам придется выполнить некоторую переписывание.

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