5.9 针对颜色/设备/UserDefaults/URL等扩展更
1. 本节课将为您演示,针对颜色、设备、网址等类型的扩展方法。在左侧的项目导航区,打开视图控制器的代码文件。
![](https://img.haomeiwen.com/i5981183/a38546323866c302.png)
![](https://img.haomeiwen.com/i5981183/c47745ebecba58dd.png)
![](https://img.haomeiwen.com/i5981183/32331a8e15fe7900.png)
![](https://img.haomeiwen.com/i5981183/948b0562292a1f2e.png)
5. 第三方类库对颜色类的初始化方法进行了优化,使开发者可以根据红、绿、蓝三原色和透明度等信息,创建所需的颜色。
![](https://img.haomeiwen.com/i5981183/b074e7e649bbd364.png)
![](https://img.haomeiwen.com/i5981183/b161e0a9c2615923.png)
![](https://img.haomeiwen.com/i5981183/e8c5aca010cb323d.png)
8. 通过对颜色类型扩展的属性,可以快速获取颜色对象的四个通道的值。
![](https://img.haomeiwen.com/i5981183/b9b205f4f06819ee.png)
9. 通过初始化方法,可以由十六进制的字符串,创建所需的颜色,并且指定颜色的不透明度。
![](https://img.haomeiwen.com/i5981183/04d1ed631bcdde83.png)
![](https://img.haomeiwen.com/i5981183/98e23453ee5a06e7.png)
![](https://img.haomeiwen.com/i5981183/85860f149f726acc.png)
12. 通过颜色对象的随机颜色的方法,可以获得一个随机的颜色。
![](https://img.haomeiwen.com/i5981183/f865b82b23a62786.png)
13. 然后在视图加载完成的方法中,调用您刚刚创建的自定义方法。接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
![](https://img.haomeiwen.com/i5981183/fe4112f84754b011.png)
14. 模拟器启动后,在控制台输出了颜色的四个通道的数值。点击此处的[停止]按钮,关闭模拟器。
![](https://img.haomeiwen.com/i5981183/22768feebca05eac.png)
![](https://img.haomeiwen.com/i5981183/5a883b62d1882d9c.png)
![](https://img.haomeiwen.com/i5981183/e35eedd564c6f619.png)
![](https://img.haomeiwen.com/i5981183/bf5de350b6233b96.png)
![](https://img.haomeiwen.com/i5981183/b0c6b9341704923a.png)
![](https://img.haomeiwen.com/i5981183/88335a24f7648d16.png)
![](https://img.haomeiwen.com/i5981183/8abd56462d3c0b60.png)
![](https://img.haomeiwen.com/i5981183/d4e2be20882f59f4.png)
![](https://img.haomeiwen.com/i5981183/e2fc00292df854bd.png)
![](https://img.haomeiwen.com/i5981183/8a2c5af15d9175fb.png)
![](https://img.haomeiwen.com/i5981183/f76f777a42b891cd.png)
25. 检测设备的系统版本号,是否在10.3的版本之上。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
![](https://img.haomeiwen.com/i5981183/0a373794add2ff8e.png)
![](https://img.haomeiwen.com/i5981183/d41a2620aa489335.png)
![](https://img.haomeiwen.com/i5981183/0dee1e0910f6e15a.png)
![](https://img.haomeiwen.com/i5981183/07ec84111aeb2aba.png)
29. 接着点击左上角的[编译并运行]按钮,启动应用程序预览项目。
![](https://img.haomeiwen.com/i5981183/b2c0fbedca313fc1.png)
30. 应用程序启动之后,在控制台输出了当前设备的各个属性。点击此处的[停止]按钮,关闭模拟器。
![](https://img.haomeiwen.com/i5981183/df83c3da38258dc1.png)
![](https://img.haomeiwen.com/i5981183/a43d2fe193f7d921.png)
32. 我们将通过该方法,演示针对轻量级本地数据存储类型的扩展。
![](https://img.haomeiwen.com/i5981183/1b8d5be938a9558f.png)
![](https://img.haomeiwen.com/i5981183/9dd4459f3292f531.png)
![](https://img.haomeiwen.com/i5981183/91b43c1022c46953.png)
35. 获取本地存储的数据的方式和字典也是相似的,通过指定的键,获得对应的本地存储的值。
![](https://img.haomeiwen.com/i5981183/8b1f50bc8031e6e6.png)
36. 接着在控制台输出相应的数据,然后点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
![](https://img.haomeiwen.com/i5981183/dcb96e9c35eff26f.png)
![](https://img.haomeiwen.com/i5981183/022436fb54467dba.png)
38. 点击左上角的[编译并运行]按钮,启动模拟器预览项目。
![](https://img.haomeiwen.com/i5981183/309c95f9f6e7480d.png)
39. 模拟器启动之后,在控制台输出了本地存储的数据。点击此处的[停止]按钮,关闭模拟器。
![](https://img.haomeiwen.com/i5981183/f823b57c484465ec.png)
![](https://img.haomeiwen.com/i5981183/6db5f15f1d7244e4.png)
41. 接着添加了一个方法,用来演示针对网址类型的扩展方法。
![](https://img.haomeiwen.com/i5981183/5beb60b5eed80884.png)
![](https://img.haomeiwen.com/i5981183/f989fec619cfc8d9.png)
![](https://img.haomeiwen.com/i5981183/31b81431c0e57063.png)
44. 然后通过键值查询的方式,获取并输出请求参数的值。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
![](https://img.haomeiwen.com/i5981183/89188d0fa370fa6c.png)
![](https://img.haomeiwen.com/i5981183/10240e3395b0e892.png)
46. 点击左上角的[编译并运行]按钮,启动模拟器预览项目。
![](https://img.haomeiwen.com/i5981183/117f761b15ab2be7.png)
47. 模拟器启动之后,在控制台依次输出了网址的三个请求参数的值。最后点击此处的[停止]按钮,关闭模拟器,并结束本节课程。
![](https://img.haomeiwen.com/i5981183/ecff46986cec57dc.png)
本文整理自:《app开发中的神兵利器》,真正的[手把手]教学模式,用最快的速度上手iOS开发,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1209739676,或扫描本页底部的二维码。课程配套素材下载地址:资料下载
![](https://img.haomeiwen.com/i5981183/dbb5a7562b6b08f2.png)