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 ...
随机推荐
- 元素绝对居中终极办法兼容IE8
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- .Net程序在linux mono环境和WindowsServer上执行测试对比
最近研究了一下mono,想把windows上写的.Net程序移植到linux上跑.网上有资料说Linux上mono执行.Net程序效率比Windows高,本着实证的态度,只有实际验证过才有说服力. 写 ...
- 「微信小程序」来了
ps:微信APP Store.微信小程序.微信应用号都是指同一个事情. 苦逼程序猿刚下班到家,还没来得及洗漱,收到条小道消息的推送.于是我有气无力的拿着手机点开了这条推送消息,映入眼帘的就是这张封面图 ...
- 在ABP中创建Person实体类
经过之前的准备目前我们的项目,终于可以搞正式的开发工作了. 创建实体Person 在Core类库中添加Person类 /// <summary> /// 联系人 /// </summ ...
- GDB 多线程调试:只停止断点的线程,其他线程任然执行; 或只运行某些线程 其他线程中断
多线程调试之痛 调试器(如VS2008和老版GDB)往往只支持all-stop模式,调试多线程程序时,如果某个线程断在一个断点上,你的调试器会让整个程序freeze,直到你continue这个线程,程 ...
- PDO
'PDO'是数据访问抽象层'用mysqli类找到mysqli驱动根据驱动操作mysqli数据库'其他类找到sqlserver驱动根据驱动操作sqlserve数据库'PDO 访问其他数据库 PDO的用法 ...
- Spring学习记录(十四)---JDBC基本操作
先看一些定义: 在Spring JDBC模块中,所有的类可以被分到四个单独的包:1.core即核心包,它包含了JDBC的核心功能.此包内有很多重要的类,包括:JdbcTemplate类.SimpleJ ...
- VC 中与字符串相关的宏 _T、TEXT,_TEXT、L 的作用
CSDN原博文:http://blog.csdn.net/houkai363/article/details/8134787 遇到了:不能将参数 1 从“const char [5]”转换为“LPCT ...
- Function Set in OPEN CASCADE
Function Set in OPEN CASCADE eryar@163.com Abstract. The common math algorithms library provides a C ...
- .net erp(办公oa)开发平台架构之流程服务概要介绍
背景 搭建一个适合公司erp业务的开发平台. 架构概要图: 流程引擎开发平台: 包含流程引擎设计器,流程管理平台,流程引擎服务.目前只使用单个数据库进行管理. 流程引擎设计器 采用silve ...