如何确定 UIColor 是否基于模式?
假设我想为UIView
设置背景图片;显然我是通过调用 [UIColor colorWithPatternImage] 来做到这一点的。有没有办法确定 UIColor
对象是否已以这种方式初始化,即它是否是图案而不是纯色?
Suppose I want to set the background image for a UIView
; apparently I do this by calling [UIColor colorWithPatternImage]
. Is there any way to determine if a UIColor
object has been initialized in this way, i.e., if it is a pattern rather than a solid color?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这就是我要尝试的:
This is what I would try:
对于 Swift,您可以使用以下扩展:
同样对于 AppKit
NSColor
,您可以执行以下操作:For Swift, you can use following extensions:
Also for AppKit
NSColor
, you can do:您可以尝试调用
CGColorGetPattern(color.CGColor)
。此函数不会记录如果颜色不是图案颜色时会发生什么,但可以合理地预期它将返回 NULL,You could try calling
CGColorGetPattern(color.CGColor)
. This function doesn't document what happens if the color is not a pattern color, but it's reasonable to expect that it will returnNULL
,