4-视图及视图控制器.pdfVIP

  1. 1、本文档共77页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
视图与视图控制器 一、MVC 多个MVC协同工作 二、窗口、视图与视图控制器的关系 Window UIViewController UIViewController View View Subviews Subviews 三、窗口 ●在IOS 中窗口是一种特殊的视图,通常在一个app 中 只会有一个窗口。 ●IOS程序启动完毕后,创建的第一个视图控件就是 窗口,接着创建控制器的视图,最后将控制器的视图 添加到窗口上,于是控制器的视图就显示在屏幕上了 先创建UIwindow,再创建控制器,创建控制器的view ,然后将 控制器的view添加到UIWindow上 ●窗口对应的类是UIWindow 。默认情况下其大小与屏 幕一致,请勿修改。可以通过下面代码获得窗口对象 ●当在故事板(storyboard )中使用IB创建UI时,会自 动帮助创建UIWindow. 注意:Mac 中编程可能会用到多个窗口,所有需要用 UIWindow,但在IOS 中只有一个窗口,所以基本不用 UIWindow, 只是使用UIViews 四、视图 1、什么是视图? ●视图表示屏幕上的一块矩形区域,它在App 中占有 绝对重要的地位,因为IOS 中几乎所有可视化控件都 是视图或其子类。 ●和窗口不同,允许在一个窗口中包含多个视图,并 且视图的尺寸是任意尺寸。并且视图可以进行嵌套和 响应事件。 ●视图对应的类是UIView及其子类: 创建视图可以有两种方法: 1、在故事板(storyboard )中利用IB创建。 2 、代码的方法。 视图对象是应用程序和用户交互的主要途径,其主要作用有 ●描画和动画 视图负责对其所属的矩形区域进行描画。 某些视图属性变量可以以动画的形式过渡到新的值。 布局和子视图管理 ●视图管理着一个子视图列表。 视图定义了自身相对于其父视图的尺寸调整行为。 必要时,视图可以通过代码调整其子视图的尺寸和位置。 视图可以将其坐标系统下的点转换为其它视图或窗口坐标系统下的点。 ●事件处理 视图可以接收触摸事件。 视图是响应者链的参与者。 2、视图坐标系统 ●IOS 中视图的坐标系统是以左上为原点 的。这点和MAC OS 中坐标系统不同(左下)。 ●同时要注意的是如果我们直接使用框架 (eg:Quartz 2D) 进行绘图,那么原点默认为左下。 ●要注意,视图的坐标系统中的每个点并不指 定是像素,一个点可能包括多个像素。 可以使用下面视图的属性来得到每点像素数 量。 3、关于视图坐标的数据类型 ●CGFloat 为了兼容32位和64位系统 ●CGPoint ●CGRect ●CGSize 几个例子: 4、边框、边界和中心 视图UIView对象通过frame、bounds 、和center属性声 明来跟踪自己的大小和位置。 ●边框frame ●边界bounds bounds属性也包含一个矩形,边即边界矩形, 负责定义视图相对于本地坐标系统的位置和大小。边 界界矩形的原点通常被设置为(0, 0) 。也可以改动原点 位置。 ●中心center center属性包含边框矩形的中心点,用CGPoint表 示矩形中心点在其父视图中的位置。中心点代表视图 的中心。改变中心点一直是移动视图位置的最好方法。 frame、bounds和center三个属性是相互关联、相互影响的, 其中一个属性发生变化,其他属性也会跟着变化。 注意:缺省情况下,视图的边框并不会被父视图的边框裁剪。如果您希望让一个 视图裁剪其子视图,需要将其clipsToBounds属性设置为YES 。 5、内容模式和比例缩放 改变视图的边界或者将一个比例因子应用到视图 的

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档