如何使用白色初始化UIColor?

17

我正在尝试使用whiteColor初始化UIColor实例,但我无法做到。如果我这样做,屏幕会出现黑色:

color = [UIColor colorWithWhite:1.0 alpha:1.0];

但是下面这行代码可以正常运行...

color = [UIColor colorWithRed:197.0/255.0 
                        green:169.0/255.0 
                         blue:140.0/255.0 
                        alpha:1.0];

我确定我做了一些愚蠢的事情,有什么想法吗?

8个回答

37
UIColor *color = [UIColor whiteColor];

谢谢,哦我不知道这个。无论如何,我通过[UIColor \ colorWithRed:((float)((0xFFFFFF&0xFF0000)>> 16))/255.0 \ green:((float)((0xFFFFFF&0xFF00)>> 8))/255.0 \ blue:((float)(&0xFFFFFF))/255.0 alpha:1.0];解决了它。 - Rakesh Singh

11

你的代码 color = [UIColor colorWithWhite:1.0 alpha:1.0] 应该可以正常工作。难道你结尾忘记写分号了吗?


否则,编译不会通过。 - Rakesh Singh

7
非常简单,只需要使用这个函数:

UIColor * color = [UIColor colorWithRed:255/255.0f 
                                  green:204/255.0f 
                                   blue:0/255.0f 
                                  alpha:1.0f];

你可以使用在线工具获取 RGB 组件或获取可用于初始化 UIColor 的代码。

5
UIColor *color = [UIColor whiteColor];

您还可以在此处找到所有由UIColor对象支持的预设组件值列表。 这里

3

对于 Swift 3,可以这样写:

UIColor.white


3

在使用UIColor的colorWithWhite方法时,第一个参数是要应用于颜色的灰度值。因此,当您提供1.0值时,您将把颜色变为黑色(提供1.0的alpha值)。若要获得白色,您需要为第一个参数提供0.0值。


你能否包含你正在使用的代码或者整个方法(包括代码)? - magnusMTB
在 iOS 9.1 模拟器上尝试后,这里是结果。这段代码将提供纯白色: [UIColor colorWithWhite:1.0 alpha:1.0]这段代码将提供纯黑色: [UIColor colorWithWhite:0.0 alpha:1.0]进一步阅读后,alpha 的作用就像人们所期望的那样,它将允许背景混合到所需的颜色中。第一个浮点数提供与白色相反的灰度值。因此,1.0 的浮点值产生纯白色。0.0 的浮点值产生黑色。0.5 的浮点值产生灰色。改变 alpha 值将改变它。 - magnusMTB

0
Any (CG object) = UIColor.LightGray.CGColor ;

虽然这段代码可能回答了问题,但提供有关它如何以及/或为什么解决问题的附加上下文将改善答案的长期价值。 - HiDeoo

0

Swift 2.x

UIColor.whiteColor()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接