Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
This is a demo project that illustrates various
branch: master

This branch is 20 commits behind DuncanMC:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
CA Test iOS new.xcodeproj
CA Test iOS new
.gitignore
readme.rtf

readme.rtf

{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf320
{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset0 Menlo-Regular;}
{\colortbl;\red255\green255\blue255;\red92\green38\blue153;}
\margl1440\margr1440\vieww17300\viewh13380\viewkind0
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural

\f0\fs24 \cf0 This project demonstrates a number of techniques for using Core Animation:\
\
\pard\tx320\tx480\tx500\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li500\fi-500\pardirnatural
\cf0 	\'95	Using 
\f1\fs22 \cf2 \CocoaLigature0 CABasicAnimation
\f0\fs24 \cf0 \CocoaLigature1  to animate a property and move images around on the screen.\
	\'95	Using different animation timing functions like 
\f1\fs22 \cf2 \CocoaLigature0 kCAMediaTimingFunctionLinear, kCAMediaTimingFunctionEaseIn, and 
\f0\fs24 \cf0 \CocoaLigature1  
\f1\fs22 \cf2 \CocoaLigature0 kCAMediaTimingFunctionEaseInEaseOut
\f0\fs24 \cf0 \CocoaLigature1  to get different effects\
\pard\tx320\tx480\tx500\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li500\fi-500\pardirnatural
\cf0 	\'95	Using 
\f1\fs22 \cf2 \CocoaLigature0 CAKeyframeAnimation
\f0\fs24 \cf0 \CocoaLigature1  and a 
\f1\fs22 \cf2 \CocoaLigature0 CGPath 
\f0\fs24 \cf0 \CocoaLigature1 to animate a layer along a curved path (a figure 8).\
	\'95	Creating a custom subclass of UIView that has a CAShapeLayer as it's backing layer so you can draw shapes in a view "for free."\
	\'95	Adding a CGPath to a shape layer to draw shapes on the screen.\
	\'95	Using 
\f1\fs22 \cf2 \CocoaLigature0 CAAnimationGroup
\f0\fs24 \cf0 \CocoaLigature1  to create a linked series of animations that run in sequence\
\pard\tx320\tx480\tx500\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li500\fi-500\pardirnatural
\cf0 	\'95	Creating a very clean "per animation" completion block scheme using the fact that 
\f1\fs22 \cf2 \CocoaLigature0 CAAnimation
\f0\fs24 \cf0 \CocoaLigature1  objects support the 
\f1\fs22 \cf2 \CocoaLigature0 setValue:forKey:
\f0\fs24 \cf0 \CocoaLigature1  method. I add a code block to an animation object and set up the animation delegate's 
\f1\fs22 \cf2 \CocoaLigature0 animationDidStop:finished 
\f0\fs24 \cf0 \CocoaLigature1 method to check for a special key/value pair with the key kAnimationCompletionBlock.\
\pard\tx320\tx480\tx500\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li500\fi-500\pardirnatural
\cf0 	\'95	Using the 
\f1\fs22 \cf2 \CocoaLigature0 cumulative
\f0\fs24 \cf0 \CocoaLigature1  property on animations to create a single repeating animation that continuously rotates a layer by any desired amount.\
	\'95	Using a CATapGestureRecognizer to detect taps on a view.\
	\'95	Detecting taps on a view while it animates "live" by using the hitTest method of the view's presentation layer\
	\'95	Pausing and resuming animation on a layer.\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural
\cf0 \
\
}
Something went wrong with that request. Please try again.