5.7 针对UIView在frame/约束/旋转/缩放/圆角/各
1. 本节课将为您演示,针对视图类型的一些实用的扩展方法。首先在左侧的项目导航区,打开视图控制器的代码文件。
5. 通过设置视图对象的水平坐标、垂直坐标、宽度和高度信息,快速创建一个视图对象。
7. 将视图对象添加到根视图,并在控制台输出视图的显示区域信息。
8. 通过设置视图对象的父视图,快速创建一个和父视图相同显示区域的子视图。
10. 使用相同的方式,创建第三个视图对象,另外设置父视图的内边距为20。
11. 设置视图的背景颜色为洋红色,然后将视图添加到指定的父视图中。
13. 然后在视图加载完成的方法中,调用我们刚刚创建的自定义方法。接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
14. 当前页面上显示了一个紫色背景的视图,其内边距为20,在紫色视图中,包含一个洋红视图。橙色视图的显示区域和紫色视图相同,所以被紫色视图所遮挡。
16. 添加另一个方法,该方法用来演示,如何快速获取视图的各个属性信息。
18. 接着在控制台,依次输出视图对象的水平坐标和垂直坐标。
24. 设置视图的背景颜色为橙色,并将视图对象添加根视图中。
25. 如果需要调整视图的坐标和尺寸,我们只需重新设置视图的四个属性即可。
26. 此时视图的坐标和尺寸都被刷新,在控制台输出视图新的水平坐标的值。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
28. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
29. 模拟器启动之后,显示了一个橙色背景的视图对象。观察在底部的控制台,所输出的日志信息。然后点击此处的[停止]按钮,关闭模拟器。
32. 我们将在这个方法中,演示如何根据其它视图,确定另一个视图的位置和尺寸。
35. 接着初始化另一个视图对象,并设置该视图在水平方向上,位于上个视图右侧20点的位置。在垂直方向上,位于上个视图下方20点的位置。
37. 接着将两个视图,全部添加到根视图。然后点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
39. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
40. 模拟器启动后,显示了两个视图对象,其中橙色视图在灰色视图的右下方,与灰色视图在水平和垂直方向,各偏移20点的距离。
43. 首先初始化一个指定坐标和尺寸的视图对象,并设置视图对象的背景颜色为紫色。
44. 初始化第二个指定坐标和尺寸的视图对象,并设置视图对象的背景颜色为橙色。
46. 然后将第一个视图,在水平位置上和根视图保持居中。将第二个视图也在两个方向上和根视图保持居中。接着点击垂直滚动条,跳转到编辑区的顶部位置。
48. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
49. 模拟器启动后,显示了两个视图对象。紫色视图和根视图在水平方向上居中对齐。而橙色视图则在水平和垂直两个方向上,和根视图保持居中显示。
55. 将视图对象添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
57. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。
58. 模拟器启动后,显示了一个在水平方向上旋转四十五度的视图对象。点击此处的[停止]按钮,关闭模拟器。
60. 接着修改代码,将视图在屏幕的Z轴方向上旋转四十五度。
62. 模拟器启动后,显示了一个在Z轴方向上旋转四十五度的视图对象。点击此处的[停止]按钮,关闭模拟器。
65. 首先初始化一个指定坐标和尺寸的视图对象,该视图对象的宽度和高度都是100。
67. 设置视图对象在水平方向上放大两倍,在垂直方向上放大四倍。
68. 将缩放后的视图对象,添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
70. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。
71. 模拟器启动后,显示了一个在水平方向上放大两倍,在垂直方向上放大四倍的视图对象。点击此处的[停止]按钮,关闭模拟器。
78. 然后设置视图对象的边框宽度为6,颜色为黑色,并将视图对象添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
80. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。
81. 模拟器启动后,显示了圆角半径为40,边框宽度为6的视图对象。点击此处的[停止]按钮,关闭模拟器。
84. 点击左上角的[编译并运行]按钮,再次启动模拟器预览项目。
85. 模拟器启动后,显示了一个底部边框宽度为20,边框颜色为红色的视图对象。点击此处的[停止]按钮,关闭模拟器。
91. 给视图对象添加一个触摸手势,并设置在一个代码块中,响应触摸的事件。
93. 将视图对象添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
95. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。
96. 模拟器启动后,在此处的橙色视图上点击,并观察控制台的日志输出。
97. 此时在控制台输出了视图点击手势的日志信息。点击此处的[停止]按钮,关闭模拟器。
102. 接着添加一个方法,演示如何给视图添加手指轻扫的手势。
105. 给视图对象添加一个轻扫手势,并设置在一个代码块中,响应触摸的事件。
106. 当视图对象被点击时,在控制台输出滑动手势的方向,以及手指的数目。
107. 将视图对象添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
109. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。
110. 模拟器启动后,在此处的橙色视图上手指轻扫,并观察控制台的日志输出。
111. 此时在控制台,输出了视图上的轻扫手势的日志信息。点击此处的[停止]按钮,关闭模拟器。
112. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。
115. 首先初始化一个指定坐标和尺寸的视图对象,并设置视图对象的背景颜色为橙色。
117. 给视图对象添加一个拖拽手势,并设置在一个代码块中,响应触摸的事件。
118. 当手势事件处于开始状态时,获得视图此时的中心点的位置。
122. 将视图对象添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
124. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。
125. 模拟器启动后,在上方的圆点处按下手指,并向下方拖动,移动视图的位置。
126. 此时视图被移至屏幕的右下角。点击此处的[停止]按钮,关闭模拟器。
127. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。
130. 首先初始化一个指定坐标和尺寸的视图对象,并设置视图对象的背景颜色为橙色。
131. 给视图对象添加一个捏合手势,并设置在一个代码块中,响应触摸的事件。
133. 将视图对象添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
135. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。
136. 模拟器启动后,在右上方的圆点处按下手指,并向左下方拖动,缩小视图的显示比例,并观察控制台的日志输出。
137. 视图被缩小至一个较小的尺寸,在控制台输出了,视图缩放过程中的比例日志。
138. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。
140. 该方法将用来演示,如何给视图快速添加长按手势。首先初始化一个指定坐标和尺寸的视图对象,并设置视图对象的背景颜色为橙色。
141. 给视图添加一个长按手势,并设置在一个代码块中,响应触摸的事件。
144. 将视图对象添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
146. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。
147. 模拟器启动后,在视图的上方长按手指,并观察视图的变化。
148. 此时视图增加了投影的效果,点击此处的[停止]按钮,关闭模拟器。
149. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。
152. 使用扩展后的初始化语句,初始化一个按钮控件,并设置它的坐标、尺寸、目标和动作等属性。
154. 接着依次设置按钮控件,在正常状态和高亮状态时的背景颜色。
157. 添加一个方法,用来响应按钮的点击事件。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。
159. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。
160. 模拟器启动后,点击此处的按钮控件,并观察控制台的日志输出。
161. 此时在底部的控制台,输出了按钮事件的日志信息。本节课为您讲解了大量的扩展实例,最好多复习几遍以上的知识。最后关闭模拟器,并结束本节课程。
本文整理自:《app开发中的神兵利器》,真正的[手把手]教学模式,用最快的速度上手iOS开发,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1209739676,或扫描本页底部的二维码。课程配套素材下载地址:资料下载
apps8 2.png