【问题标题】:iOS Core Graphics: How to properly set and use colorsiOS Core Graphics:如何正确设置和使用颜色
【发布时间】:2014-06-20 06:51:06
【问题描述】:

我最近开始开发一个 iOS 应用程序,这是我以前从未做过的事情。我在 CSS 样式方面有很多经验,所以尝试使用图形对象和库对我来说很陌生。

我见过的很多教程都使用 CGGraphicsContext 来绘制到屏幕上。但是,我正在尝试绘制一个圆角矩形,而我所看到的关于如何做到这一点的答案涉及这样的事情(顺便说一句,这是 Swift,而不是 Objective-C。类都是相同的,语法不同) :

let buttonRect: UIBezierPath = UIBezierPath(roundedRect: rect, cornerRadius: 5.0)
buttonRect.fill()

我在 UIButton 子类的 drawRect() 方法中实现了这段代码,这段代码在前面:

let color: UIColor = UIColor(red: 190, green: 190, blue: 190, alpha: 1.0)
color.setFill()

据我所知,对颜色调用 setFill() 应将底层图形的填充颜色设置为该颜色,随后对 fill() 的任何调用都将使用该颜色。

当我运行这段代码时,圆角矩形就像我预期的那样弹出,但它是白色的,而不是我指定的颜色。

我有什么遗漏的吗?我不确定自定义绘图如何与界面构建器中的选项集成,这与它有关吗?

【问题讨论】:

    标签: ios colors core-graphics uibezierpath


    【解决方案1】:

    UIColor RGB 值范围从 0.0 到 1.0。你应该替换这一行

    let color: UIColor = UIColor(red: 190, green: 190, blue: 190, alpha: 1.0)
    

    用这个:

    let color: UIColor = UIColor(red: 190.0/255.0, green: 190.0/255.0, blue: 190.0/255.0, alpha: 1.0)
    

    【讨论】:

    • 哇,这是我第一次看到。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-07
    • 1970-01-01
    • 1970-01-01
    • 2016-10-04
    • 1970-01-01
    相关资源
    最近更新 更多