文档章节

IOS开发CALayer隐式动画

dspidery
 dspidery
发布于 2015/12/24 15:44
字数 217
阅读 108
收藏 0

每一个自定义的layer都存在默认的隐私动画,隐式动画默认为1/4秒

@interface DYViewController ()

@property (nonatomic, weak) CALayer *layer;

@end

@implementation DYViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
	
    
    CALayer *layer = [CALayer layer];
    
    // 设置尺寸
    layer.bounds = CGRectMake(0, 0, 100, 100);
    
    // 颜色
    layer.backgroundColor = [UIColor redColor].CGColor;
    
    [self.view.layer addSublayer:layer];
    
    _layer = layer;
    
    
}

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    // 获取触摸点
    UITouch *touch = [touches anyObject];
    CGPoint pos = [touch locationInView:self.view];

    
    // 开启事务
//    [CATransaction begin];
//    
//    // 取消隐世动画
//    [CATransaction setDisableActions:NO];
    
    // 设置边框
    _layer.borderWidth = arc4random_uniform(5) + 1;
    CGFloat r = arc4random_uniform(256) / 255.0;
    CGFloat g = arc4random_uniform(256) / 255.0;
    CGFloat b = arc4random_uniform(256) / 255.0;

    
    // 设置背景颜色
    _layer.backgroundColor = [UIColor colorWithRed:r green:g blue:b alpha:1].CGColor;
    
    // 设置圆角半径
    _layer.cornerRadius = arc4random_uniform(50);
    
    // 设置位置
    _layer.position = pos;
    
//    // 提交事务
//    [CATransaction commit];
}

如果关闭默认的动画效果:可以通过动画的事务方法实现。

    // 开启事务
//    [CATransaction begin];
//    
//    // 取消隐世动画
//    [CATransaction setDisableActions:NO];
//    // 提交事务
//    [CATransaction commit];


© 著作权归作者所有

dspidery
粉丝 1
博文 19
码字总数 2937
作品 0
杨浦
私信 提问
iOS开发系列--让你的应用“动”起来

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jianxin160/article/details/47753223 --iOS核心动画 概览 在iOS中随处都可以看到绚丽的动画效果,实现这些动...

KenshinCui
2015/08/18
0
0
iOS开发系列--让你的应用“动”起来

概览 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看到iOS中如何使用图层精简非交互式绘图,如何通过核心动画创建基础动画...

creeve
2014/10/26
0
0
iO6 Programming pushing the limits 阅读笔记

目录 第一部分 iOS6新内容 第二部分 从每天工具中获取更多(介绍日常使用控件和框架的潜力) 第三部分 完成任务的正确工具(介绍不是那么常用的控件和框架) 第四部分 发挥到极限(深入理解i...

云飞扬v5
2015/11/09
0
0
GPU vs CPU in iOS

一直以来,我们做产品的时候并没有特别的去考虑CPU/GPU的使用,最近为了提升可视化功能的性能,发现合理使用GPU也是一个可以好好研究的部分,这里总结一下一些有用的信息。 中央处理器 CPU ...

雨_树
2018/07/10
0
0
iOS学习——核心动画之Layer基础

iOS学习——核心动画之Layer基础 1、CALayer是什么? CALayer我们又称它叫做层。在每个UIView内部都有一个layer这样一个属性,UIView之所以能够显示,就是因为它里面有这个layer才具有显示的...

mukekeheart
2018/07/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

windows下cmd常用的命令

windows下常用的命令指示行: windows下 CMD比较常见的命令1. gpedit.msc-----组策略 2. sndrec32-------录音机 3. Nslookup-------IP地址侦测器 4. explorer-------打开资源管理器...

WinkJie
25分钟前
1
0
折叠手机适配布局

CSS Grid 设备相关参数 媒体查询 Chrome进行调试,创建相应的模拟机

lilugirl
26分钟前
1
0
Knative Eventing 中如何实现 Registry 事件注册机制

摘要: 在最新的 Knative Eventing 0.6 版本中新增了 Registry 特性, 为什么要增加这个特性, 该特性是如何实现的。针对这些问题,希望通过本篇文章给出答案。 背景 作为事件消费者,之前是...

阿里云云栖社区
30分钟前
0
0
安装 jemalloc for mysql

前言: Jemalloc 是BSD的提供的内存分配管理 安装依赖 $ yum install -y gcc$ yum install autoconf -y 安装 jemalloc $ git clone https://github.com/jemalloc/jemalloc$ cd jema......

Linux_Anna
40分钟前
2
0
linux下ctrl+c中止不了

有一台centos7的服务器,ctrl+c无效,并且tail -f也无效,只能关掉终端或者crtl+z放入后台再删掉,但是ping的时候使用ctrl+c是有效果的。 出现这种情况的原因可能是因为有人要使用ruby安装r...

gaolongquan
54分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部