当前位置: 首页 > news >正文

html5手机网站开发框架网站开发语言分析

html5手机网站开发框架,网站开发语言分析,海淀网站建设,鞋材 技术支持 东莞网站建设NSView提供了经典的“stuts and springs”模式#xff0c;用于视图调整大小的时候把关联到它父图层的视图重新调整位置。图层支持该模式#xff0c;而且Mac OS X上面的核心动画提供了一个更通用的布局管理器机制#xff0c;允许开发者自己写他们自己的布局管理器。可以为图层… NSView提供了经典的“stuts and springs”模式用于视图调整大小的时候把关联到它父图层的视图重新调整位置。图层支持该模式而且Mac OS X上面的核心动画提供了一个更通用的布局管理器机制允许开发者自己写他们自己的布局管理器。可以为图层定制一个布局管理器它通常实现CALayoutManager协议负责给图层的子图层提供布局功能。   本章介绍了约束布局管理器和如何配置一系列约束条件。   iOS 注意:iOS的CALayer类仅提供“stuts and springs”模式不提供定制的布局管理器。然而如果你想人工修改关联到特别视图的图层的位置的话你可以重载相应视图的layoutSubviews方法在这里面实现你定制的布局代码。你可以查看“iOS视图编程指南View Programming Guide for iOS”来获取更多关于如何在iOS应用里面基于视图的布局方法。   1.1 约束布局管理器   基于条件的布局允许你根据图层和它同级图层或者它的父图层的相应关系指定图层的位置和大小。通过CAConstraint类描述的关系被保存在子图层的constraints数组属性里面。   图1描述了在指定关系的的时候你可以使用的布局特性。   Figure 1  布局管理器constraints属性         当使用约束布局的时候你首先创建一个CAConstraintLayoutManager的实例并把它设置为父图层的布局管理器。然后你通过实例化CAConstraint对象为子图层创建约束条件并把这些约束条件通过使用addConstraint:方法添加到子图层的约束属性里面。每个CAConstraint实例封装了一个两个图层在同一轴上的几何关系。   同级层引用的名称使用图层的name属性。特定的名称superlayer被使用来引用图层的父图层。   每个轴上面最多只能指定两个关系。如果你给图层的左边和右边都指定约束关系那么图层的宽度就会不同。如果你给图层的左边和宽度指定约束关系则图层的右边就会从根据父图层的frame移动。通常你一般只会指定单个边的约束条件图层在同一个轴上面的大小将会作为第二个约束关系。   代码1里面的示例代码创建了一个图层然后使用位置约束条件添加子图层。图2描述了布局的结果。   Figure 2  基于示例中constraints的布局           代码 1  配置 layer的 constraints   // create and set a constraint layout manager for theLayer   theLayer.layoutManager[CAConstraintLayoutManager layoutManager];     CALayer *layerA [CALayer layer];   layerA.name layerA;     layerA.bounds CGRectMake(0.0,0.0,100.0,25.0);   layerA.borderWidth 2.0;     [layerA addConstraint:[CAConstraint constraintWithAttribute:kCAConstraintMidY                                                  relativeTo:superlayer                                                   attribute:kCAConstraintMidY]];     [layerA addConstraint:[CAConstraint constraintWithAttribute:kCAConstraintMidX                                                  relativeTo:superlayer                                                   attribute:kCAConstraintMidX]];     [theLayer addSublayer:layerA];     CALayer *layerB [CALayer layer];   layerB.name layerB;   layerB.borderWidth 2.0;     [layerB addConstraint:[CAConstraint constraintWithAttribute:kCAConstraintWidth                                                  relativeTo:layerA                                                   attribute:kCAConstraintWidth]];     [layerB addConstraint:[CAConstraint constraintWithAttribute:kCAConstraintMidX                                                  relativeTo:layerA                                                   attribute:kCAConstraintMidX]];       [layerB addConstraint:[CAConstraint constraintWithAttribute:kCAConstraintMaxY                                                  relativeTo:layerA                                                   attribute:kCAConstraintMinY                                                      offset:-10.0]];     [layerB addConstraint:[CAConstraint constraintWithAttribute:kCAConstraintMinY                                                  relativeTo:superlayer                                                   attribute:kCAConstraintMinY                                                      offset:10.0]];     [theLayer addSublayer:layerB];      以上是代码执行过程:   创建一个CAConstraintLayoutmanager实例然后把它设置为theLayer的layoutManger的属性。     创建一个CALayer(layerA)的实例设置图层的name属性为“layerA”。     设置layerA的bounds为(0.0,0.0,10.0,25.0)。   创建一个CAConstraint对象把它作为约束条件添加到layerA里面。该约束条件是把layerA的水平中心对齐它的父图层的水平中心。   创建第二个CAConstraint对象把它作为layerA的约束条件。该约束条件是把layerA的垂直中心对齐父图层的垂直中心。   把layerA添加为theLayer的子图层。    创建一个CALayer(layerB)的实例设置图层的name属性为“layerB”。   创建一个CAConstraint对象给layerA添加该约束条件该约束条件是设置layerB的宽度设置为与layerA的宽度相同。   创建第二个CAConstraint对象把该约束条件添加到layerB里面。该约束条件是设置layerB的水平中心对齐layerA的水平中心。   创建第三个CAConstraint对象并把它添加为layerB的约束条件。该约束条件设置layerB的顶边低于layerA底边10像素。   创建第四个CAConstraint对象把它作为约束条件添加到layerB里面。该约束条件是把layerB的底边高于父图层底边10像素。   注意: 有可能创建约束条件导致在相同的属性的循环引用。在布局是无法计算的情况下行为结果是不可预知的。 转自梦维http://www.dreamingwish.com/dream-2012/coreanimation-programming-guide-ix-layer-layout.html
http://www.pierceye.com/news/392664/

相关文章:

  • 教着做美食的网站wordpress 无法安装主题
  • 只选设计师的网站牛商网是干什么的
  • 网站设计中新闻版块怎么做乐清新闻联播
  • 网站开发维护员挣钱吗全球电子商务公司排行
  • 祥云县住房和城乡建设网站百度热议排名软件
  • 网站开发攻克时间网站模版制作教程
  • 遵义一般做一个网站需要多少钱菲斯曼售后服务中心
  • 教务系统网站建设模板下载东莞企业高端网站建设
  • 淮南建设公司网站网站建设对教育解决方案
  • 泰兴建设局网站wordpress资料图片不显示
  • 外贸推广免费网站图片 网站源码
  • 博客推广那个网站列好邢台网红桥
  • 艺之都网站建设微信app开发腾讯视频分享到wordpress
  • 洛阳最好的做网站的公司哪家好建网站需要哪些文件夹
  • 舟山企业网站建设导出wordpress用户
  • 肇庆新农村建设内容在哪个网站有关天猫网站开发的论文
  • 网站建设代码生成器php网站开发专员招聘
  • 视频教学网站cms陕西网站备案查询
  • 湖州网站设计浙北数据wordpress自定义搜索页面
  • 昆明公司网站开发流线型的网站建设
  • 南京建设网站企业泊头市建设网站
  • 前端跟后端哪个就业难北京网站建设seo优化
  • 简述网站开发建设的基本流程做一个京东这样的网站需要多少钱
  • 与通信工程专业做项目的网站微信开发显示wordpress
  • 自己做链接网站萍乡做网站哪家好
  • 做网站最适合用多大的图片医院 网站建设 新闻
  • 网站开发职业分析产品展示的手机网站
  • 精通网站建设pdf网上自学电脑课程
  • 一站式网站建设业务沈阳网站建设 熊掌号
  • 58同城网站建设目的劳务公司怎么注册需要什么要求