是否可以以编程方式检测特定UILabel的颜色?
这些代码行的意图是将背景从红色更改为白色。短暂增加亮度,然后降低亮度,然后将标签背景颜色跟回红色。
问题在于,有时亮度会随着背景颜色的变化而增加。因此导致应用程序设计的主要缺陷。这是私人的。
self.label.backgroundColor = [UIColor colorWithRed:255.0/255 green:255.0/255 blue:255.0/255 alpha: 1.0];
[UIScreen mainScreen].brightness = 1.0;
[self performSelector:@selector(resetColor) withObject:self afterDelay:0.05f ];
- (void)resetColor {
[UIScreen mainScreen].brightness = 0.0;
self.label.backgroundColor = [UIColor colorWithRed:255.0/255 green:0.0/255 blue:0.0/255 alpha:0.5];
任何人都可以看到为什么它会随意改变背景颜色吗?
主要是,有可能做到以下几点吗?
if (self.label.backgroundColor == [UIColor whiteColor]){
要么
while (self.label.backgroundColor == [UIColor whiteColor){
答案 0 :(得分:0)
你的职能:
[self performSelector:@selector(resetColor) withObject:self afterDelay:0.05f ];
这个函数叫哪个?
比较颜色是相同的: 使用isEqual:而不是== 即。
if ([self.label.backgroundColor isEqual:[UIColor whiteColor]])
否则,你应该比较所有Color的元素, 即RGBA