判断颜色是否相等UIColor

参考:http://www.cnblogs.com/smileEvday/archive/2011/12/12/2285275.html
只有自己总结记录了才是自己的。

判断颜色是否相等UIColor

不同的颜色的RGBA值不同,因此利用这种方法来判断两种颜色是否相等:
1. 新建工程,在storyboard上拖两个UILabel,并设置背景颜色。
























2.对两个UILabel设置property属性

@property (weak, nonatomic) IBOutlet UILabel *color1;
@property (weak, nonatomic) IBOutlet UILabel *color2;

3.对背景颜色的比对函数
<span style="font-size:12px;">- (BOOL)compareRGBAColor1:(UIColor *)color1 withColor2:(UIColor *)color2 {
	
	CGFloat red1,red2,green1,green2,blue1,blue2,alpha1,alpha2;
	//取出color1的背景颜色的RGBA值
	[color1 getRed:&red1 green:&green1 blue:&blue1 alpha:&alpha1];
	//取出color2的背景颜色的RGBA值
	[color2 getRed:&red2 green:&green2 blue:&blue2 alpha:&alpha2];
	
	NSLog(@"1:%f %f %f %f",red1,green1,blue1,alpha1);
	NSLog(@"2:%f %f %f %f",red2,green2,blue2,alpha2);
	
	if ((red1 == red2)&&(green1 == green2)&&(blue1 == blue2)&&(alpha1 == alpha2)) {
		return YES;
	} else {
		return NO;
	}
}</span>
4.输入比对
<span style="font-size:12px;">- (void)viewDidLoad {
	[super viewDidLoad];

	BOOL compareResult = [self compareRGBAColor1:self.color1.backgroundColor withColor2:self.color2.backgroundColor];
	
	if (compareResult) {
		NSLog(@"颜色一致!");
	} else {
		NSLog(@"颜色不一致");
	}
}</span>
注意:
得到的alpha值不是View属性当中的alpha值,而是background->Opacity值。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值