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 ...
随机推荐
- Windows 7 上安装Visual Studio 2015 失败解决方案
安装之前先要看看自己的系统支不支持,具体的可以看:https://www.visualstudio.com/en-us/visual-studio-2015-system-requirements-v ...
- C#对WebApi数据操作
目标 简化并统一程序获取WebApi对应实体数据的过程,方便对实体进行扩充.原理就是数据服务使用反射发现数据提供者,处理好泛型就行. 相关传送门:Restful WebApi开发实践 先来看下最后的请 ...
- ABP教程-给项目添加SwaggerUI,生成动态webapi
上一篇,我们是正式将ABP生成的代码项目,跑起来了,然后演示了下多租户的不同.那么这篇我们就来实现下SwaggerUI. Q:SwaggerUI是干什么的呢? A:他是一个能将我们的webapi,通过 ...
- .NET 基础 一步步 一幕幕[数组、集合、异常捕获]
数组.集合.异常捕获 数组: 一次性存储多个相同类型的变量. 一维数组: 语法: 数组类型[] 数组名=new 数组类型[数组长度]; 声明数组的语法: A.数据类型 [] 数组名称= new 数据类 ...
- C# 面向对象基础
面向对象编程OOP(Object-Oriented Programming) 类和对象 类是对象的定义,对象是类的实现. [属性集信息] [类修饰符] class 类名 [:类基] //定义类的语法格 ...
- JMeter压力测试
Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域. 它可以用于测试静态和动态资源例如静态文件. ...
- 实践 Neutron FWaaS - 每天5分钟玩转 OpenStack(118)
前面我们学习了 FWaaS 的理论知识,今天将通过实验来学习 FWaaS. 在我们的实验环境中,有两个 instance: cirros-vm1(172.16.100.3) 和 cirros-vm2( ...
- Python笔记之不可不练
如果您已经有了一定的Python编程基础,那么本文就是为您的编程能力锦上添花,如果您刚刚开始对Python有一点点兴趣,不怕,Python的重点基础知识已经总结在博文<Python笔记之不可不知 ...
- 【分布式】Zookeeper的服务器角色
一.前言 前一篇已经详细的讲解了Zookeeper的Leader选举过程,下面接着学习Zookeeper中服务器的各个角色及其细节. 二.服务器角色 2.1 Leader Leader服务器是Zook ...
- Java进击C#——语法之线程同步
上一章我们讲到关于C#线程方向的应用.但是笔者并没有讲到多线程中的另一个知识点--同步.多线程的应用开发都有可能发生脏数据.同步的功能或多或少都会用到.本章就要来讲一下关于线程同步的问题.根据笔者这几 ...