Обнаружение, если UIColor был создан с colorWithPatternImage
У меня есть UIColor
это передается мне. Мне нужно определить, если это простой цвет (например, создан с colorWithRed:green:blue:alpha:
) или если это цвет, который был создан с colorWithPatternImage
,
Как я могу сказать, какой цвет UIColor
есть, простой цвет или иначе?
2 ответа
Решение
Вы должны иметь возможность использовать функцию CGColorGetPattern со свойством CGColor и проверять наличие NULL.
if( CGColorGetPattern( myColor.CGColor ) != NULL ) {}
Другим решением является проверка модели цветового пространства:
if (CGColorSpaceGetModel(CGColorGetColorSpace(myColor.CGColor)) == kCGColorSpaceModelPattern))
{}