IOS基本图形绘制 参考
取色对照表 参照
页面背景改为 #5CACEE 的颜色。有两个方法
方法一:
加两个宏
#define UIColorFromHexWithAlpha(hexValue,a) [UIColor colorWithRed:((float)((hexValue & 0xFF0000) >> 16))/255.0 green:((float)((hexValue & 0xFF00) >> 8))/255.0 blue:((float)(hexValue & 0xFF))/255.0 alpha:a]
#define UIColorFromHex(hexValue) UIColorFromHexWithAlpha(hexValue,1.0)
然后 = UIColorFromHex(0x5cacee);
方法二:
为UIColor 添加一个延展方法
+ (UIColor*) colorWithHex:(NSInteger)hexValue alpha:(CGFloat)alphaValue
{
return [UIColor colorWithRed:((float)((hexValue & 0xFF0000) >> 16))/255.0
green:((float)((hexValue & 0xFF00) >> 8))/255.0
blue:((float)(hexValue & 0xFF))/255.0 alpha:alphaValue];
}
然后 [UIColor colorWithHex:0x5CACEE alpha:1];
其他知识点:
(1)参考
-(id)initWithFrame:(CGRect)frame
-(instancetype)initWithFrame:(CGRect)frame
以他们开头的这两个初始化方法有什么区别?
比如你有一个类A,如果你重写一个init开头的方法,那么这个方法返回值也是A类的,但如果你写个其他名称的方法,就返回id了,instancetype可以保证依然返回一个A类的对象。省得你再强制类型转换。而且统一用instancetype显得整齐吧.
(2)
对于数组,字典,可变的不可以进行遍历,不可变的可以进行遍历,如要遍历,要把可变的数组、字典转化为不可变的然后再进行遍历。
(3)根据颜色视图得到三色值
如果想查看某一颜色的RGB值可以使用如下方法得到:
首先打开Launchpad
然后选择下面截图的左下角工具(数码测色计)将鼠标放到你选定的颜色视图上,数码测色计中就会显示出三色值