
Core Animation
Young丶
这个作者很懒,什么都没留下…
展开
-
QuartzCore框架-- iOS中的动画
iOS学习笔记之QuartzCore框架iOS编程给用户视觉反馈其实都是通过QuartzCore框架来进行的,说白了,所有用户最终看到的显示界面都是图层合成的结果,而图层即是QuartzCore中的CALayer。通常我们所说的视图即UIView,并不是直接显示在屏幕上,而是在创建视图对象的时候视图对象会自动创建一个层,而视图对象把要显示的东西绘制在层上,待到需要显示时硬件将所有的层拷贝,原创 2016-06-02 16:44:17 · 385 阅读 · 0 评论 -
CALayer( 一 )
一 CALayer是什么?摘自官网的一句话-Layers Provide the Basis for Drawing and Animations(Layers是绘图和动画的基础) Layer是在3D空间中的2D平面。Layer管理的几何(例如rotate,transfrom),内容(image等),和可视属性(backgroundColor,alpha)等信息。Layer主要通原创 2017-04-11 15:04:51 · 337 阅读 · 0 评论 -
CALayer(二)
前言:本文涵盖了(1)绘制CALayer的三种方式(2)Layer Tree一 提供CALayer内容的三种方式把一个图像对象直接赋值给contents属性(这是提供CALayer内容的最好方式)设置delegate,让代理绘制layer的内容继承CALayer,重写绘制方法,来提供layer的内容1.1 把一个图像对象直接赋值给contents属性 这个在上一篇原创 2017-04-11 16:44:29 · 272 阅读 · 0 评论 -
CATransition
前言:CATransition 是CAAnimation的子类,最主要的用途是用来定义view reload的转场动画。使用这个集成好的类,可以几行代码就创建出不错的效果。效果一动图 核心代码, CATransition * transition = [CATransition animation]; transition.type = kCATra原创 2017-04-11 18:34:08 · 339 阅读 · 0 评论 -
CGContextSaveGState与CGContextRestoreGState的作用
使用Quartz时涉及到一个图形上下文,其中图形上下文中包含一个保存过的图形状态堆栈。在Quartz创建图形上下文时,该堆栈是空的。CGContextSaveGState函数的作用是将当前图形状态推入堆栈。之后,您对图形状态所做的修改会影响随后的描画操作,但不影响存储在堆栈中的拷贝。在修改完成后,您可以通过CGContextRestoreGState函数把堆栈顶部的状态弹出,返回到之前的图形状态。原创 2017-04-11 18:50:04 · 361 阅读 · 0 评论 -
Transform(CTM,Translate,Rotate,Scale)
前言:Quartz默认采用设备无关的user space来进行绘图,当context(画板)建立之后,默认的坐标系原点以及方向也就确认了,可以通过CTM(current transformation matrix)来修坐标系的原点。从数组图像处理的角度来说,就是对当前context state乘以一个状态矩阵。其中的矩阵运算开发者可以不了解。以下,会一一个Demo图解,坐标系的位移,旋原创 2017-04-11 19:15:18 · 493 阅读 · 0 评论 -
(Shadow,Gradient)
Shadowshadow(阴影)的目的是为了使UI更具有立体感,如图 shadow主要有三个影响因素x off-set 决定阴影沿着x的偏移量y off-set 决定阴影沿着y的偏移量blur value 决定了阴影的边缘区域是不是模糊的其中不同的blur效果如图 注意Shadow也是绘制状态相关的,意味着如果仅仅要绘制一个subp原创 2017-04-11 19:40:43 · 280 阅读 · 0 评论 -
Bitmap
什么是Bitmap?Bitmap叫做位图,每一个像素点由1-32bit组成。每个像素点包括多个颜色组件和一个Alpha组件(例如:RGBA)。iOS中指出如下格式的图片 JPEG, GIF, PNG, TIF, ICO, GMP, XBM,和 CUR。其他格式的图片要给Quartz2D传入图片的数据分布信息。数据类型CGImageRef在Quartz中,Bitm原创 2017-04-11 19:49:17 · 473 阅读 · 0 评论 -
隐式动画
按照我的意思去做,而不是我说的。 -- 埃德娜,辛普森我们在第一部分讨论了Core Animation除了动画之外可以做到的任何事情。但是动画是Core Animation库一个非常显著的特性。这一章我们来看看它是怎么做到的。具体来说,我们先来讨论框架自动完成的隐式动画(除非你明确禁用了这个功能)。事务Core Animation基于一个假设,说屏幕上的任何东西都可以(原创 2017-07-05 11:00:37 · 268 阅读 · 0 评论 -
iOS 2D绘图详解(Quartz 2D)之路径(点,直线,虚线,曲线,圆弧,椭圆,矩形)
前言:一个路径可以包含由一个或者多个shape以及子路径subpath,quartz提供了很多方便的shape可以直接调用。例如:point,line,Arc(圆弧),Curves(曲线),Ellipse(椭圆),矩形(Rectangle).对这些path可以进行stroke(描边),也可以进行fill(填充).也可以利用path对一个区域进行截取(clip).例如,使用截原创 2017-04-11 14:39:15 · 433 阅读 · 0 评论 -
iOS 2D绘图详解(Quartz 2D)之概述
原创Blog,转载请注明出处 http://blog.csdn.net/hello_hwc?viewmode=list 前言:最近在研究自定义控件,由于想要彻底的定制控件的视图还是要继承UIView,虽然对CALayer及其子类很熟练,但是对Quartz 2D这个强大的框架仍然概念模棱两可。于是,决定学习下,暂定7篇文章讲解,会写一些Demo。 官方文档转载 2017-04-11 14:00:03 · 342 阅读 · 0 评论 -
Core Animation
iOS 核心动画高级技术核心动画是基于苹果iOS用户界面的技术。通过使用核心动画的全部功能,可以用2D和3D视觉效果来提升应用程序并创造炫酷的全新接口。iOS开发者尼克·洛克伍德会带你一步一步体验Core Animation框架,通过示例代码和图表加深理解。洛克伍德会揭开核心动画API的神秘面纱,同时教你如何使用层和视图,绘图软件和硬件合成图层几何,点击测试和剪辑图层效果,原创 2016-11-23 23:18:04 · 405 阅读 · 0 评论 -
UIView之动画效果的实现方法(合集)
前言:在开发APP中,我们会经常使用到动画效果。使用动画可以让我们的APP更酷更炫,最重要的是优化用户体验,但取决于动画的质量。像QQ、微信、新浪微博等APP,动画效果就很好了,至少我很喜欢它们的动画,让我使用起来感觉很顺畅,心情很开朗。本文会介绍UIView效果的实现方法,非核心动画。一、使用UIView类实现动画基本写法,代码必须放在Begin和Commit之间:[UIVi原创 2016-08-24 21:42:31 · 358 阅读 · 0 评论 -
IOS绘图详解
Core Graphics Framework是一套基于C的API框架,使用了Quartz作为绘图引擎。它提供了低级别、轻量级、高保真度的2D渲染。该框架可以用于基于路径的绘图、变换、颜色管理、脱屏渲染,模板、渐变、遮蔽、图像数据管理、图像的创建、遮罩以及PDF文档的创建、显示和分析。为了从感官上对这些概念做一个入门的认识,你可以运行一下官方的example code。 iOS原创 2016-08-26 22:59:55 · 2038 阅读 · 0 评论 -
CALayer-层的属性
本文目录一、隐式动画属性二、position和anchorPoint回到顶部一、隐式动画属性* 在前面几讲中已经提到,每一个UIView内部都默认关联着一个CALayer,我们可用称这个Layer为Root Layer(根层)。所有的非Root Layer,也就是手动创建的CALayer对象,都存在着隐式动画。* 当对非Root Layer的部分属性转载 2017-04-10 20:25:26 · 264 阅读 · 0 评论 -
UIBezierPath介绍
前言UIBezierPath是UIKit中的一个关于图形绘制的类,是通过Quartz 2D也就是CG(Core Graphics)CGPathRef的封装得到的,从高级特性支持来看不及CG。UIBezierPath类可以绘制矩形、圆形、直线、曲线以及它们的组合图形。UIBezierPath对象对象创建方法// 创建基本路径+ (instancetype)bezierPath;原创 2016-08-26 21:35:09 · 761 阅读 · 0 评论 -
Core Animation1-简介
本文目录一、Core Animation简介二、Core Animation的使用步骤三、CAAnimation四、CAPropertyAnimation回到顶部一、Core Animation简介* Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍。也就是说,使用少量的代转载 2017-04-10 20:50:06 · 279 阅读 · 0 评论 -
FillMode详解
最近在学核心动画的时候遇到了遇到了fillMode的属性,除了kCAFillModeForwards比较理解意外,其他三个参数一脸蒙蔽,感觉没什么区别,看官方文档也没看出个所以然,去网上查了一些资料如下:kCAFillModeBackwards 这个和kCAFillModeForwards是相对的,就是在动画开始前,你只要将动画加入了一个layer,layer便立即进入动画的初始状态并等待原创 2017-04-11 11:25:06 · 1511 阅读 · 0 评论 -
Core Graphics
Core Graphics入门想必每个第一次接触Core Graphics的开发者都被无数的API、混乱的代码逻辑折腾得头疼不已,甚至望而却步。即使是绘制一个简单的矩形也看上去非常繁琐。本文换一个角度,整理一下有关Core Graphics的知识,也算作是这段时间学习的总结。Core Graphics和UIKit的区别首先从概念上了解一下:原创 2017-04-11 13:15:51 · 397 阅读 · 0 评论 -
显式动画
如果想让事情变得顺利,只有靠自己 -- 夏尔·纪尧姆上一章介绍了隐式动画的概念。隐式动画是在iOS平台创建动态用户界面的一种直接方式,也是UIKit动画机制的基础,不过它并不能涵盖所有的动画类型。在这一章中,我们将要研究一下显式动画,它能够对一些属性做指定的自定义动画,或者创建非线性动画,比如沿着任意一条曲线移动。属性动画首先我们来探讨一下属性动画。属性动画作用于图层的某个原创 2017-07-05 17:01:20 · 368 阅读 · 0 评论