CALayer基本介绍与常见属性
属性框架:QuartzCore
CA: CoreAnimation -> 核心动画,所有的核心动画都是添加给layer的!
与UIView的区别:
1、layer负责内容的展示,不接受任何用户交互!
2、UIView继承自UIResponder,可以接受用交互,执行事件处理操作!
创建CALayer
// 1.创建
CALayer *redL = [CALayer layer]; // 2.设置大小
redL.bounds = CGRectMake(, , , ); // 3.设置位置 -> 不是center! 是position, 我们给视图设置的center,最终是交给了layer的position的!
redL.position = CGPointMake(, ); // 4.背景色 -> 需要转为CGColorRef类型的颜色!
redL.backgroundColor = [UIColor redColor].CGColor; // 5.添加
[self.view.layer addSublayer:redL];
常见属性:1、边框;2、阴影;3、内容(要以设置背景图片);4、圆角(masksToBounds会切掉阴影)
// MARK: - 1.边框 -> 向里面走!
// _redLayer.borderColor = [UIColor yellowColor].CGColor;
// _redLayer.borderWidth = 10; // MARK: - 2.阴影 -> shadow
// 阴影默认向上偏移3个点! offset
_redLayer.shadowOpacity = 1.0;
// 阴影的颜色
_redLayer.shadowColor = [UIColor blueColor].CGColor;
_redLayer.shadowOffset = CGSizeMake(, );
_redLayer.shadowRadius = ;
// _redLayer.shadowPath = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, 0, 100, 100)].CGPath; // MARK: - 3.内容
// 还可以直接设置背景图片!
// __bridge id 桥接 -> 将cgimage转为QuartzCore框架下得id类型!
// 以后可能还有其他的桥接形式!
// _redLayer.contents = (__bridge id _Nullable)([UIImage imageNamed:@"ice"].CGImage);
_redLayer.contents = (__bridge id)[UIImage imageNamed:@"ice"].CGImage; // MARK: - 4.圆角
_redLayer.cornerRadius = ;
_redLayer.masksToBounds = YES; // 会切掉阴影部分
// 利用控制器视图layer的contents属性,直接设置背景图片!
// self.view.layer.contents = (__bridge id)[UIImage imageNamed:@"bg"].CGImage;
CALayer基本介绍与常见属性的更多相关文章
- CoreGraphics-线段常见属性及渲染模式介绍
线段常见属性: 1.线宽 2.线头样式 3.接头样式 4.颜色(包括描边颜色和填充颜色) override func draw(_ rect: CGRect) { // 获取图形上下文对象 let c ...
- Ext.Window 的常见属性
Ext.Window 的常见属性: plain:true,(默认不是) resizable:false,(是否可以改变大小,默认可以) maximizable:true,(是否增加最 ...
- UIView的常见属性
UIView的常见属性: @interface UIView : UIResponder<NSCoding, UIAppearance, UIAppearanceContainer, UIDyn ...
- HTML简单介绍及常见元素
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- CSS背景图片常见属性设置
在CSS中,图片属性的设置是必不可少的,下面介绍一下常见的图片属性: 1)背景图片插入:background-image:url(位置及名称); //默认在父级元素内的左上角 2)背景平铺方式:ba ...
- Request 对象 response 对象 常见属性
请求和响应 Express 应用使用回调函数的参数: request 和 response 对象来处理请求和响应的数据. app.get('/', function (req, res) { // - ...
- UIView常见属性总结
一 UIVIew 常见属性 .frame 位置和尺寸(以父控件的左上角为原点(,)) .center 中点 (以父控件的左上角为原点(,)) .bounds 位置和尺寸(以自己的左上角为原点 (,)) ...
- UISlider常见属性
常见属性 self.mySlider.minimumValue = 0.0; // 最小值 self.mySlider.maximumValue = 10; // 最大值 self.mySl ...
- UIScrollView常见属性
什么是UIScrollView •设备的屏幕大小是极其有限的,因此直接展示在用户眼前的内容也相当有限 • •当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容 • •普通的UIV ...
随机推荐
- deepsooncms在Ubuntu 14.04上部署教程
deepsooncms在Ubuntu 14.04上部署教程 一.安装mono1.在命令行运行sudo apt-key adv --keyserver keyserver.ubuntu.com --re ...
- The Coroutine
关于Coroutine 说到coroutine就不的不说subroutine,也就是我们常用到的一般函数.调用一个函数开始执行,然后函数执行完成后就退出,再次调用的时候,再从头开始,调用之间是没有保存 ...
- Leetcode 笔记 100 - Same Tree
题目链接:Same Tree | LeetCode OJ Given two binary trees, write a function to check if they are equal or ...
- 怎样编写高质量的java代码
代码质量概述 怎样辨别一个项目代码写得好还是坏?优秀的代码和腐化的代码区别在哪里?怎么让自己写的代码既漂亮又有生命力?接下来将对代码质量的问题进行一些粗略的介绍.也请有过代码质量相关经验的朋友 ...
- 使用 Swagger 自动生成 ASP.NET Core Web API 的文档、在线帮助测试文档(ASP.NET Core Web API 自动生成文档)
对于开发人员来说,构建一个消费应用程序时去了解各种各样的 API 是一个巨大的挑战.在你的 Web API 项目中使用 Swagger 的 .NET Core 封装 Swashbuckle 可以帮助你 ...
- python property理解
一般情况下我这样使用property: @property def foo(self): return self._foo # 下面的两个decrator由@property创建 @foo.sette ...
- SQL Server 批量完整备份
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 实现方式一(One) 实现方式二(Two) 实现方式三(Thr ...
- Bootstrap3系列:按钮式下拉菜单
1. 基本实例 把按钮放入 .btn-group 中,加入适当的菜单标签,让按钮触发下拉菜单. 1.1 示例代码 <div class="btn-group"> < ...
- 高性能JavaScript--快速响应的用户界面(简要学习笔记三)
1.浏览器线程:用于执行JavaScript和更新用户界面的进程被称为“浏览器UI线程”. 2. <1>定时器的出现让出UI线程控制权 setTimeout(),setInterval ...
- iOS APP 如何做才安全
本来 写了一篇<iOS 如何做才安全--逆向工程 - Reveal.IDA.Hopper.https抓包 等>,发现文章有点杂,并且“iOS 如何做才安全”这部分写的越来越多,觉得 分出来 ...