Swift 的UIColor 类的详解使用和十六进制转RGB

            生活处处充满色彩,当然,作为一个App -IOS 的开发者,在你手上产出的App 也应该具有一定的特色。和绚丽的色彩。那么就要考虑到颜色的创建类  UIColor 。今天我就带你走进  Swift   的 UIColor。 


        下面进行刨根问底:

import UIKit


class ViewController: UIViewController {


    override func viewDidLoad() {

        super.viewDidLoad()

        //首先创建一个View

        let  ZSJ_View = UIView(frame: CGRectMake(100,100,100,100))

        

        /*********************************************************/

        //设置ZSJ_View  的背景颜色

        ZSJ_View.backgroundColor = UIColor.redColor()

    

        /*********************************************************/


        //使用给定的一个颜色,从新设置它的透明度后从新获得一个新的颜色

        let ZSJ_Coloer = UIColor.magentaColor()

        /*

          ZSJ_Coloer  参数 给定的颜色

          1           参数  设置透明度的值  0~1

        */

        ZSJ_View.backgroundColor = ZSJ_Coloer.colorWithAlphaComponent(1)

        /*

          它与OC的使用差别是

        UIColor *color = [UIColor redColor];

        UIColor *cl = [color colorWithAlphaComponent:0.5f];

        */

        

        

        /*********************************************************/


        /*

           这个方法是  有四个参数组成的

               绿       透明度   他们都是(0~1)的数值

        */

        //ZSJ_View.backgroundColor = UIColor.init(colorLiteralRed: 23/255.0, green: 23/255.0, blue: 23/255.0, alpha: 1)

        /*********************************************************/

        /*

           这个方法是:指定 色调   饱和度   亮度  创建颜色(~)

           hue          参数      色调      0~240

           saturation   参数      饱和度    0~240

           brightness   参数      亮度      0~240

           alpha        参数      透明度     0~1

        

        */

        ZSJ_View.backgroundColor = UIColor.init(hue: 20/240.0, saturation: 10/240.0, brightness: 3/240.0, alpha: 0.3)

        

        

        /*********************************************************/

        /*

           这个方法是使用图片创建颜色

           UIimage   参数     图片对象

                   是表示你的这个图片 确定存在     不添加会报错(也有?)

        */

         ZSJ_View.backgroundColor = UIColor.init(patternImage: UIImage(named: "fadcf1d10901b800bd13b745d48e5755.jpg")!)

        

        ZSJ_View.backgroundColor = UIColor(patternImage: UIImage(named: "fadcf1d10901b800bd13b745d48e5755.jpg")!)

        /*********************************************************/

        

        /* 十六进制转换成RGB

        */

        ZSJ_View.backgroundColor = ZSJ_Color_Conversion("#DC143C")

        /*********************************************************/


        /*可用的颜色有:

        blackColor() -> UIColor // 0.0 white

        darkGrayColor() -> UIColor // 0.333 white         深灰色

        lightGrayColor() -> UIColor // 0.667 white        浅灰色

        whiteColor() -> UIColor // 1.0 white              白色

        grayColor() -> UIColor // 0.5 white               灰色

        redColor() -> UIColor // 1.0, 0.0, 0.0 RGB        红色

        greenColor() -> UIColor // 0.0, 1.0, 0.0 RGB      绿色

        blueColor() -> UIColor // 0.0, 0.0, 1.0 RGB       蓝色

        cyanColor() -> UIColor // 0.0, 1.0, 1.0 RGB       青色

        yellowColor() -> UIColor // 1.0, 1.0, 0.0 RGB     黄色

        magentaColor() -> UIColor // 1.0, 0.0, 1.0 RGB    洋红色

        orangeColor() -> UIColor // 1.0, 0.5, 0.0 RGB     橙色

        purpleColor() -> UIColor // 0.5, 0.0, 0.5 RGB     紫色

        brownColor() -> UIColor // 0.6, 0.4, 0.2 RGB      棕色

        clearColor() -> UIColor // 0.0 white, 0.0 alpha   透明色

        darkTextColor() ->UIColor                         文本灰色

        groupTableViewBackgroundColor()-> UIColor

        

        

        

        lightTextColor:返回系统使用的在深背景下显示文本的颜色。

        darkTextColor: 返回系统使用的在浅背景下显示文本的颜色。

        groupTableViewBackgroundColor:返回系统使用的groupTable的背景颜色。

        viewFlipsideBackgroundColor

        scrollViewTexturedBackgroundColor:系统提供的Pattern color(使用图像生成的)来渲染可滚动内容的背景色。

        underPageBackgroundColor:系统提供的Pattern Color来渲染一个page的背景色。

        

        

        */

        // ZSJ_View 加载到当前视图控制器的View 即是 self.view

        self.view.addSubview(ZSJ_View)

        // Do any additional setup after loading the view, typically from a nib.

    }

   /****************************************************************/

    func ZSJ_Color_Conversion ( Color_Value:NSString)->UIColor{

        var  Str :NSString = Color_Value.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet()).uppercaseString

        if Color_Value.hasPrefix("#"){

            Str=(Color_Value as NSString).substringFromIndex(1)

        }

        let ZSJ_StrRed = (Str as NSString ).substringToIndex(2)

        let ZSJ_StrGreen = ((Str as NSString).substringFromIndex(2) as NSString).substringToIndex(2)

        let ZSJ_StrBlue = ((Str as NSString).substringFromIndex(4) as NSString).substringToIndex(2)

        var r:CUnsignedInt = 0, g:CUnsignedInt = 0, b:CUnsignedInt = 0;

        NSScanner(string:ZSJ_StrRed).scanHexInt(&r)

        NSScanner(string: ZSJ_StrGreen).scanHexInt(&g)

        NSScanner(string: ZSJ_StrBlue).scanHexInt(&b)

        return UIColor(red: CGFloat(r)/255.0, green: CGFloat(g)/255.0, blue: CGFloat(b)/255.0, alpha: 1)

    }

   /***************************************************************/


    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

        // Dispose of any resources that can be recreated.

    }



}


   其中    func  ZSJ_Color_Conversion ( Color_Value: NSString )-> UIColor  是本篇博客的重点:是十六进制的数转化为RGB 的参数。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值