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

如何建一个免费试用网站怎样建设网站

如何建一个免费试用网站,怎样建设网站,青海wap网站建设哪家好,小程序 wordpress绑定今天说一下UIView 与 CALayer 一、UIView 和 CALayer 的关系 在 iOS 开发中#xff0c;UIView 是用户界面的基础#xff0c;它负责处理用户交互和绘制内容#xff0c;而 CALayer 是 UIView 内部用于显示内容的核心图层#xff08;Layer#xff09;。每个 UIView 内部都有…今天说一下UIView 与 CALayer 一、UIView 和 CALayer 的关系 在 iOS 开发中UIView 是用户界面的基础它负责处理用户交互和绘制内容而 CALayer 是 UIView 内部用于显示内容的核心图层Layer。每个 UIView 内部都有一个 CALayer 实例负责管理其外观。 UIView 负责 事件响应如触摸事件视图管理如添加子视图、布局交互动画 CALayer 负责 处理底层的图像绘制提供丰富的视觉效果如阴影、圆角、边框高效的图形渲染和动画性能优化 UIView 本质上是 CALayer 的封装它提供了更高级的接口使开发者能够方便地管理 UI 组件而 CALayer 提供了更强大的低级绘制能力。 二、UIView 和 CALayer 的主要区别 特性UIViewCALayer作用处理用户交互、管理子视图负责显示内容、绘制图像事件处理能响应触摸事件不能直接响应事件层级关系可以添加子视图 (addSubview:)只能添加子层 (addSublayer:)动画支持UIView AnimationCore Animation更底层更高效内容渲染依赖于 CALayer直接渲染像素性能较高封装较多更高效直接操作 GPU阴影、圆角部分支持但性能较低直接支持性能更高 三、CALayer 的常见功能 CALayer 主要用于控制视图的视觉效果包括阴影、圆角、边框、渐变、3D 变换等。以下是 CALayer 的一些常见属性和用法 1. 圆角 (cornerRadius) CALayer 提供 cornerRadius 属性用于设置圆角 UIView *view [[UIView alloc] initWithFrame:CGRectMake(50, 50, 100, 100)]; view.backgroundColor [UIColor blueColor]; view.layer.cornerRadius 20; view.layer.masksToBounds YES;cornerRadius 让 CALayer 变得更圆滑。masksToBounds YES 确保子视图不会超出 cornerRadius 限制。 ⚠️ 注意masksToBounds YES 会裁剪子视图但同时也会影响阴影效果导致 shadow 无法生效。 2. 阴影 (shadow) CALayer 允许为视图添加阴影效果 view.layer.shadowColor [UIColor blackColor].CGColor; view.layer.shadowOffset CGSizeMake(3, 3); view.layer.shadowOpacity 0.5; view.layer.shadowRadius 5;shadowColor阴影颜色shadowOffset阴影偏移量shadowOpacity阴影透明度shadowRadius阴影模糊半径 注意 masksToBounds YES 会裁剪阴影导致阴影不可见。如果要同时使用 cornerRadius 和 shadow可以使用 UIView 的 shadowPath view.layer.shadowPath [UIBezierPath bezierPathWithRoundedRect:view.bounds cornerRadius:20].CGPath;这样可以手动设置阴影路径避免 masksToBounds 影响阴影显示。 3. 边框 (border) CALayer 提供 borderWidth 和 borderColor 让视图添加边框太常用也没啥注意的不举例子了 4. 透明度 (opacity) CALayer 允许控制透明度 view.layer.opacity 0.5; // 0.0 完全透明1.0 不透明与 UIView 的 alpha 类似但 opacity 只作用于 CALayer不会影响 UIView 的交互事件。 5. 变换 (transform) CALayer 提供 transform 属性支持 3D 变换 UIView *view1 [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)]; view1.backgroundColor UIColor.redColor; [self.view addSubview:view1];CATransform3D rotate CATransform3DMakeRotation(M_PI / 4, 0, 0, 1); view1.layer.transform rotate; 以上就实现了旋转45度π/4还可以可以实现缩放、平移等复杂动画可自己试试。 6. 透明背景 (backgroundColor) CALayer 允许直接设置 backgroundColor view.layer.backgroundColor [UIColor greenColor].CGColor;此代码实际效果和view.backgroundColor UIColor.greenColor是一样的UIView 的 backgroundColor 其实是封装的 CALayer 的 backgroundColor。 7. 渐变色 (CAGradientLayer) 使用 CAGradientLayer 可以实现渐变背景 CAGradientLayer *gradientLayer [CAGradientLayer layer]; gradientLayer.frame view.bounds; gradientLayer.colors [(__bridge id)[UIColor redColor].CGColor, (__bridge id)[UIColor blueColor].CGColor]; gradientLayer.startPoint CGPointMake(0, 0); gradientLayer.endPoint CGPointMake(1, 1); [view.layer addSublayer:gradientLayer];8. 组动画 (CAAnimationGroup) CALayer 的动画比 UIView 的 animation 更强大例如 CABasicAnimation *scale [CABasicAnimation animationWithKeyPath:transform.scale]; scale.fromValue 1.0; scale.toValue 1.5; scale.duration 0.5;CABasicAnimation *fade [CABasicAnimation animationWithKeyPath:opacity]; fade.fromValue 1.0; fade.toValue 0.5; fade.duration 0.5;CAAnimationGroup *group [CAAnimationGroup animation]; group.animations [scale, fade]; group.duration 0.5;[view.layer addAnimation:group forKey:groupAnimation];这样可以同时实现缩放透明度变化。 四、总结 方面UIViewCALayer作用处理用户交互管理子视图负责绘制内容、动画、阴影、渐变等事件响应能处理触摸事件不能直接处理触摸事件动画UIView.animateWithDurationCore Animation更高效视觉特效部分支持圆角、阴影更强大渐变、3D 变换、阴影优化 UIView 是更高层的 UI 组件适用于普通 UI 开发。CALayer 提供更低级的图形绘制功能适用于高性能动画、渐变、阴影等优化。 如果你需要更复杂的 UI 效果如渐变、动画、3D 变换等可以直接操作 CALayer 来优化性能
http://www.hkea.cn/news/14308396/

相关文章:

  • 不同网站对商家做o2o的政策如何做网站搜索栏
  • 中国建设银行云南官网站纪念币赣州卫生人才考试网
  • 云南网站建设500平台电商运营
  • 做百度网站哪家公司好如何用小米路由器做网站
  • 确山专业网站建设做优化很好的网站
  • seo网站源码网站被泛解析
  • 网站建设pdf 下载用asp做网站视频
  • 网站开发 图片储存wordpress 页面404
  • joomla 网站图标普通人做电商要多少钱
  • 江山市建设局网站服务器在国外怎样做网站镜像
  • 双辽建设局网站杭州建站模板系统
  • 物流网站的建设网站2级目录怎么做
  • 手机网站建设cz35临漳网站建设
  • 生活做爰网站成都营销型网站建设公司
  • 网站开发的上市公司有哪些站长之家html
  • 扬中网站推广托管工商注册核名查询官网
  • 在哪个网站找水利工地做小程序自助建站
  • 微信手机客户端网站建设做网站用微软雅黑侵权吗
  • 制作钓鱼网站的费用wap视频网站建设难吗
  • 招聘网站设计师要求自己制作免费网站
  • 网站内链少改怎么做wordpress写表格
  • 手机网站字体大小自适应网站开发建设推荐用书
  • 安徽建设监理协会网站做的网站为什么图片看不了怎么回事
  • 毕业设计做课程网站好中铁建设集团有限公司登录
  • 网站刷排名工具wordpress多站点使用期限插件
  • 2017年做那家网站好做网站用什么ui美观
  • 北京网站设计合理刻找人代做网站注意事项
  • 怎样让网站排名优化工没网站怎么做cpa
  • 阳江招聘网站普洱高端网站建设价格
  • 金华专业的网站建设应用公园app在线平台