Как я могу узнать, основан ли UIColor на шаблоне?

Предположим, я хочу установить фоновое изображение для UIView; видимо, я делаю это, вызывая [UIColor colorWithPatternImage]. Есть ли способ определить, был ли объект UIColor инициализирован таким образом, т. е. является ли он шаблоном, а не сплошным цветом?


person Dan Tao    schedule 27.01.2012    source источник
comment
Почему ты хочешь это знать?   -  person Lily Ballard    schedule 27.01.2012


Ответы (2)


Вы можете попробовать позвонить CGColorGetPattern(color.CGColor). Эта функция не документирует, что происходит, если цвет не является цветом шаблона, но разумно ожидать, что она вернет NULL,

person Lily Ballard    schedule 27.01.2012

Вот что я бы попробовал:

if (CGColorGetPattern(uiColor.CGColor)) {
    // it's a pattern-based color
}
person rob mayoff    schedule 27.01.2012