5.10 给整形/浮点/数组/字典/字符串/点/颜色/图像类扩展更多实用功能 [iOS开发中的神兵利器]

1. 本节课将为您演示,另一款强大的第三方扩展类库。首先确保在您的项目中,已经安装了所需的第三方库。在此处双击查看安装配置文件。

2. 根据配置文件中的相关设置,安装第三方库。安装完成之后,双击打开此处的项目文件。

3. 然后在左侧的项目导航区,打开视图控制器的代码文件。

4. 现在开始编写代码,使用类库中的多个扩展功能。

5. 首先在当前的类文件中,引入已经安装的第三方类库。

6. 接着添加一个方法,用来演示针对整型类型的扩展。

7. 通过扩展属性,可以快速获得某个整型数据的奇偶性。

8. 检测该整数是否为偶数。

9. 接着检测该整数是否为正数。

10. 继续检测该整数是否为负数。

11. 通过整数快速创建一个指定次数的循环语句。

12. 通过整型的类方法,快速获得指定区间的随机数。

13. 然后在视图加载完成的方法中,调用您刚刚创建的自定义方法。接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。

14. 模拟器启动之后,观察在控制台输出的日志信息。然后点击此处的[停止]按钮,关闭模拟器。

15. 点击右侧的垂直滚动条,跳转到编辑区的底部位置。

16. 接着添加一个方法,用来演示针对浮点类型的扩展方法。

17. 通过浮点类型的类方法,快速获得指定区间的随机的浮点数值。

18. 也可以获得双精度类型的随机数值。

19. 初始化一个浮点类型的常量。

20. 然后通过扩展方法,获得一个整数。

21. 也可以指定小数点的位置,然后再进行处理。

22. 在设置小数点的位置时,向最近或更大的方向进行舍入。

23. 在设置小数点的位置时,向最近或远离0的方向进行舍入,结果为5.0。

24. 使用相同的方式,进行小数点的舍入,结果为6.0。

25. 继续使用相同的方式,进行其它数据小数点的舍入,结果分别为-5.0和-6.0。

26. 在设置小数点的位置时,向较大的方向进行舍入。

27. 在设置小数点的位置时,向远离0的方向进行舍入。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

28. 修改此处的方法名称。

29. 点击左上角的[编译并运行]按钮,启动模拟器预览项目。

30. 模拟器启动之后,观察在控制台输出的日志信息。然后点击此处的[停止]按钮,关闭模拟器。

31. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。

32. 接着添加另一个方法。

33. 我们将在这个方法中,演示对字符串类型的扩展。

34. 将字符串修改成驼峰命名格式。

35. 检测字符串中的内容,是否为数字。

36. 继续检测字符串中的内容,是否为数字。

37. 使用正则表达式,将字符串中的指定内容,替换为星号。

38. 使用正则表达式,给字符串中的指定内容的两侧,各添加一个尖括号。

39. 将字符串截取至指定的位置。

40. 将字符串截取至指定的位置,截取的内容被替换为省略号。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

41. 修改此处的方法名称。

42. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。

43. 模拟器启动之后,观察在控制台输出的日志信息。然后点击此处的[停止]按钮,关闭模拟器。

44. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。

45. 接着添加另一个方法。

46. 我们将在这个方法中,演示对图像类型的扩展方法。

47. 从项目中读取一张图片资源。

48. 接着调用图像对象的应用高亮效果,增加图像的亮度。

49. 初始化一个图像视图,用来显示添加高亮效果的图片。

50. 将图像视图放置在根视图的中心位置。

51. 将图像视图对象添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

52. 修改此处的方法名称。

53. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。

54. 模拟器启动之后,在屏幕上显示了一个拥有高亮效果的图片。接着点击此处的[停止]按钮,关闭模拟器。

55. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。

56. 第三方类库提供了如变亮、变暗、着色、模糊等视觉效果,修改此处的代码,给图片添加超级亮光效果。

57. 接着给图片添加变暗效果。

58. 添加变暗效果之后,图片将变得暗淡。

59. 在此给图片添加着色效果,并设置颜色为洋红色。然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。

60. 模拟器启动之后,在屏幕上显示了一个被填充洋红色的图片。点击此处的[停止]按钮,关闭模拟器。

61. 继续修改此处的代码。

62. 给图片应用着色效果,并设置颜色为紫色。

63. 给图片应用模糊效果,并设置模糊的半径、着色、饱和度比率等参数。然后点击左上角的[编译并运行]按钮,再次启动模拟器预览项目。

64. 模拟器启动之后,在屏幕上显示了添加模糊效果的图片。点击此处的[停止]按钮,关闭模拟器。

65. 继续修改此处的代码。

66. 通过调用图像类型的扩展方法,将图片快速缩放到指定的尺寸。然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。

67. 模拟器启动之后,在屏幕上显示了一个被缩放到指定尺寸的图片。点击此处的[停止]按钮,关闭模拟器。

68. 继续修改此处的代码。

69. 通过调用图像类型的扩展方法,将图片快速缩放到指定的尺寸,同时不保持宽度的比率。

70. 通过另一个方法,将图片缩放到1.5倍的大小。然后点击左上角的[编译并运行]按钮,再次启动模拟器预览项目。

71. 模拟器启动之后,在屏幕上显示了一个被放大1.5倍的图片。点击此处的[停止]按钮,关闭模拟器。

72. 继续修改此处的代码。

73. 通过另一个方法,将图片缩放到1.5倍的大小,并设置图片的朝向为向下,共有8种方向可以选择。

74. 接着添加一个方法,用来演示对颜色类型的扩展方法。

75. 初始化一个视图对象,用来显示自定义的颜色,并将视图对象添加到根视图。

76. 通过十六进制的方式,初始化一个颜色对象,并设置不透明度的值为0.75。

77. 通过色相、饱和度、亮度和不透明度的模式,初始化另一个颜色对象。

78. 通过青色、洋红、黄色、黑色和不透明度,初始化一个常用于印刷的颜色对象。

79. 通过红色、绿色、蓝色和不透明度,初始化一个基于三原色的颜色对象。

80. 创建一个颜色对象,并设置颜色的不透明度为0.2。

81. 从一个颜色对象创建另一个颜色对象,并提高颜色的亮度。

82. 从一个颜色对象创建另一个颜色对象,并降低颜色的亮度。

83. 创建一个随机的颜色。

84. 然后在控制台输出随机颜色的十六进制的值。

85. 依次输出该颜色在四种色彩模式下的数值。

86. 设置视图的背景颜色为随机颜色,接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

87. 修改此处的方法名称。

88. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。

89. 模拟器启动之后,在屏幕上显示了一个随机背景颜色的视图。点击此处的[停止]按钮,关闭模拟器。

90. 点击右侧的垂直滚动条,跳转到编辑区的底部位置。

91. 接着添加另一个方法。

92. 我们将在这个方法中,演示对数组类型的扩展。

93. 初始化一个由数字组成的数组对象。

94. 通过调用数组对象的扩展方法,将数组中的前面的两个元素,移动到数组的尾部。

95. 通过调用数组对象的扩展方法,将数组中的后面的两个元素,移动到数组的头部。

96. 初始化另一个数组对象。

97. 通过调用数组对象的扩展方法,获得并输出在数字3的前方的元素。

98. 接着获得并输出在数字2的前方的元素。

99. 最后获得并输出在数字1的前方的元素。

100. 通过调用数组对象的扩展方法,获得并输出在数字后方的元素。

101. 初始化一个数组对象,然后通过扩展方法,获得去除重复元素后的结果,这是一个极为实用的扩展方法。接着点击垂直滚动条,跳转到编辑区的顶部位置。

102. 修改此处的方法名称。

103. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。

104. 模拟器启动之后,观察在控制台输出的日志信息。接着点击此处的[停止]按钮,关闭模拟器。

105. 点击右侧的垂直滚动条,跳转到编辑区的底部位置。

106. 接着添加另一个方法。

107. 我们将在这个方法中,演示对字典类型的扩展。

108. 初始化一个字典对象。

109. 初始化另一个字典对象。

110. 通过字典对象的扩展方法,可以合并两个字典对象。

111. 在控制台输出合并后的字典对象。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

112. 修改此处的方法名称。

113. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。

114. 模拟器启动之后,观察在控制台输出的日志信息。接着点击此处的[停止]按钮,关闭模拟器。

115. 点击右侧的垂直滚动条,跳转到编辑区的底部位置。

116. 接着添加最后一个方法。

117. 我们将在这个方法中,演示对点类型的扩展。

118. 首先依次初始化两个点对象。

119. 然后通过扩展方法,获得并输出两点之间的距离。

120. 将两个点对象进行相加,即将两个点对象的x值和y值分别进行相加。

121. 将两个点对象进行相减,即将第一个点对象的x值,减去第二个点对象的x值。将第一个点对象的y值,减去第二个点对象的y值。

122. 将两个点对象进行相乘,即将两个点对象的坐标值分别进行相乘。

123. 将两个点对象进行相除,即将第一个点对象的坐标值,除以第二个点对象的对应的坐标值。

124. 修改此处的方法名称。

125. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。

126. 模拟器启动之后,观察在控制台输出的日志信息。最后点击此处的[停止]按钮,关闭模拟器,并结束本节课程。

本文整理自:《app开发中的神兵利器》,真正的[手把手]教学模式,用最快的速度上手iOS开发,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1209739676,或扫描本页底部的二维码。课程配套素材下载地址:资料下载

apps8 2.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,847评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,208评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,587评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,942评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,332评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,587评论 1 218
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,853评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,568评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,273评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,542评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,033评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,373评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,031评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,073评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,830评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,628评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,537评论 2 269

推荐阅读更多精彩内容