ios开发之图层与核心动画一:图层CALayer的认识
#import "ViewController.h" @interface ViewController ()
@property (weak, nonatomic) IBOutlet UIView *redView;
@property (weak, nonatomic) IBOutlet UIImageView *imageV; @end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
} -(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { //设置阴影的颜色
self.imageV.layer.shadowColor = [UIColor blueColor].CGColor;
//设置阴影的不透明度:0为完全透明,1为不透明
self.imageV.layer.shadowOpacity = ;
//设置阴影偏移量宽高偏移,正数则向右向下平移
self.imageV.layer.shadowOffset = CGSizeMake(, );
//设置阴影的模糊的半径
self.imageV.layer.shadowRadius = ; //边框宽度,往里边走的.
self.imageV.layer.borderWidth = ;
self.imageV.layer.borderColor = [UIColor greenColor].CGColor; /**
* 1:image并不是在layear的图层上,而是在layear的contents上,设置圆角效果是在layear层,并不会影响到contents上的image,要想layer图层和contents有联系,则必须设置self.imageV.layer.masksToBounds,也就是把超过根层也就是layear层的部分裁减掉,所以imageView要设置圆角效果必须加上self.imageV.layer.masksToBounds,而UIView可以不用设置
2:设置圆形效果:就让UIimageview的圆角cornerRadius等于UIimageview宽度的一半
*/
//设置圆角
self.imageV.layer.cornerRadius = ;
//把超过根层以外的东西都给裁剪掉(UIview自带的层,我们称它是根层)
self.imageV.layer.masksToBounds = YES; NSLog(@"%@",self.imageV.layer.contents); } - (void)UIViewLayer {
//设置阴影的颜色
self.redView.layer.shadowColor = [UIColor blueColor].CGColor;
//设置阴影的不透明度
self.redView.layer.shadowOpacity = ;
self.redView.layer.shadowOffset = CGSizeMake(-, -);
//设置阴影的模糊的半径
self.redView.layer.shadowRadius = ; //边框宽度,往里边走的.
self.redView.layer.borderWidth = ;
self.redView.layer.borderColor = [UIColor greenColor].CGColor; //设置圆角
self.redView.layer.cornerRadius = ;
} @end
1.CALayer简介:
CALayer我们又称它叫做层.
在每个UIView内部都有一个layer这样一个属性.
UIView之所以能够显示,就是因为它里面有这个一个层,才具有显示的功能.
我们通过操作CALayer对象,可以很方便地调整UIView的一些外观属性.
可以给UIView设置阴影,圆角,边框等等...
2.操作layer改变UIView外观.
2.1.设置阴影
默认图层是有阴影的, 只不过,是透明的
_RedView.layer.shadowOpacity = 1;
设置阴影的圆角
_RedView.layer.shadowRadius =10;
设置阴影的颜色,把UIKit转换成CoreGraphics框架,用.CG开头
_RedView.layer.shadowColor = [UIColor blueColor].CGColor;
2.2.设置边框
设置图层边框,在图层中使用CoreGraphics的CGColorRef
_RedView.layer.borderColor = [UIColor whiteColor].CGColor;
_RedView.layer.borderWidth = 2;
2.3.设置圆角
图层的圆角半径,圆角半径为宽度的一半, 就是一个圆
_RedView.layer.cornerRadius = 50;
3.操作layer改变UIImageView的外观.
设置图形边框
_imageView.layer.borderWidth = 2;
_imageView.layer.borderColor = [UIColor whiteColor].CGColor;
设置图片的圆角半径
_imageView.layer.cornerRadius = 50;
裁剪,超出裁剪区域的部分全部裁剪掉
_imageView.layer.masksToBounds = YES;
注意:UIImageView当中Image并不是直接添加在层上面的.这是添加在layer当中的contents里.
我们设置层的所有属性它只作用在层上面.对contents里面的东西并不起作用.所以我们看不到图片有圆角的效果.
想要让图片有圆角的效果.可以把masksToBounds这个属性设为YES,
当设为YES,把就会把超过根层以外的东西都给裁剪掉.
ios开发之图层与核心动画一:图层CALayer的认识的更多相关文章
- iOS核心动画高级技巧之CALayer(一)
iOS核心动画高级技巧之CALayer(一) iOS核心动画高级技巧之图层变换和专用图层(二)iOS核心动画高级技巧之核心动画(三)iOS核心动画高级技巧之性能(四)iOS核心动画高级技巧之动画总结( ...
- 图层的核心动画(CABaseAnimation)
Main.storyboard // // ViewController.m // 7A14.图层的核心动画 // // Created by huan on 16/2/4. // Copyr ...
- [iOS UI进阶 - 6.1] 核心动画CoreAnimation
A.基本知识 1.概念 Core Animation是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍,使用它需要先添加QuartzCore.framework和引入对 ...
- 图层的核心动画(CABaseAnimation)续
Main.storyboard ViewController.m // // ViewController.m // 8A01.核心动画 // // Created by huan on 16/ ...
- iOS开发笔记10:圆点缩放动画、强制更新、远程推送加语音提醒及UIView截屏
1.使用CAReplicatorLayer制作等待动画 CALayer+CABasicAnimation可以制作很多简单的动画效果,之前的博客中介绍的“两个动画”,一个是利用一张渐变色图片+CABas ...
- 【Swift】IOS开发中自定义转场动画
在IOS开发中,我们model另外一个控制器的时候,一般都使用默认的转场动画. 其实我们可以自定义一些转场动画.达到不同的转场效果. 步骤如下:(photoBrowser是目标控制器) 1.在源控制器 ...
- IOS第18天(9,核心动画-动画组)
****动画组 // 核心动画都是假象,不能改变layer的真实属性的值// 展示的位置和实际的位置不同.实际位置永远在最开始位置 #import "HMViewController.h&q ...
- [iOS UI进阶 - 6.2] 核心动画CoreAnimation 练习代码
A.基本用法 1.CABasicAnimation // // ViewController.m // CoreAnimationTest // // Created by hellovoidworl ...
- iOS UI进阶-3.0 核心动画
Core Animation是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍,使用它需要先添加QuartzCore.framework和引入对应的框架<Quar ...
随机推荐
- Android模拟、实现、触发系统按键事件的方法
Android模拟.实现.触发系统按键事件的方法 /** * 模拟系统按键. * * @param keyCode */ public static void onKeyEvent(final ...
- 【吴节操点评】中国企业SaaS应用深谙未来者寥寥数几 两极分化将加剧
数年前,在国外企业级应用如火如荼的时候.国内却是一片空白.而现在企业SaaS应用市场,包含用友.金蝶.东软在内的三巨头.已经有数十家之多.相比美国3000亿美元的企业应用三巨头来说,中国企业应用前三甲 ...
- 企业网管软件实战之看视频学装Cisco Works 2000
650) this.width=650;" border="0" alt="125711349.jpg" src="http://img1. ...
- UVA 12333 Revenge of Fibonacci
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...
- CISP/CISA 每日一题 18
CISSP 每日一题(答)What is the purpose of an access review and audit? Checkto ensure that users do not hav ...
- 【2017 Multi-University Training Contest - Team 9】FFF at Valentine
[链接]http://acm.hdu.edu.cn/showproblem.php?pid=6165 [题意] 一张有向图,n个点,m条边,保证没有重边和自环.询问任意两个点能否满足任何一方能够到达另 ...
- COGS——T 2057. [ZLXOI2015]殉国
http://cogs.pro/cogs/problem/problem.php?pid=2057 ★☆ 输入文件:BlackHawk.in 输出文件:BlackHawk.out 评测插件 ...
- nagios 安装配置(包含nrpe端)全 (一)
一.nagios安装: 1.安装下面命令: 这是本人监控服务时自己定义插件所用到的几个系统命令.可不安装. (1)iostat:监控磁盘IO信息: apt-getinstall sysstat (2) ...
- mycat快速体验(转)
横空出世的MyCat截至到2015年4月,保守估计已经有超过60个项目在使用,主要应用在电信领域.互联网项目,大部分是交易和管理系统,少量是信息系统.比较大的系统中,数据规模单表单月30亿.本人也初步 ...
- 洛谷 P2755 洗牌问题
P2755 洗牌问题 题目描述 给你2N张牌,编号为1,2,3..n,n+1,..2n.这也是最初的牌的顺序. 一次洗牌是把序列变为n+1,1,n+2,2,n+3,3,n+4,4..2n,n.可以证 ...