Image jitter of iOS core animations
Last Update:2016-01-24
Source: Internet
Author: User
<span id="Label3"></p><pre><span style="color: #008080;"><span style="color: #008080;">1</span></span> <span style="color: #0000ff;"><span style="color: #0000ff;">#import</span></span> <span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #800000;"><span style="color: #800000;">NJViewController.h</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #008080;"><span style="color: #008080;">2</span></span> <span style="color: #008080;"><span style="color: #008080;">3</span></span> <span style="color: #0000ff;"><span style="color: #0000ff;">#define</span></span>Angle2radian (angle) ((angle)/180.0 * m_pi)<span style="color: #008080;"><span style="color: #008080;">4</span></span> <span style="color: #008080;"><span style="color: #008080;">5</span></span> <span style="color: #0000ff;"><span style="color: #0000ff;">@interface</span></span><span style="color: #000000;"><span style="color: #000000;">Njviewcontroller ()</span></span><span style="color: #008080;"><span style="color: #008080;">6</span></span> <span style="color: #008080;"><span style="color: #008080;">7</span></span>@property (weak, Nonatomic) Iboutlet Uiimageview *<span style="color: #000000;"><span style="color: #000000;">iconview;</span></span><span style="color: #008080;"><span style="color: #008080;">8</span></span> <span style="color: #0000ff;"><span style="color: #0000ff;">@end</span></span><span style="color: #008080;"><span style="color: #008080;">9</span></span> <span style="color: #008080;"><span style="color: #008080;">Ten</span></span> <span style="color: #0000ff;"><span style="color: #0000ff;">@implementation</span></span><span style="color: #000000;"><span style="color: #000000;">Njviewcontroller</span></span><span style="color: #008080;"><span style="color: #008080;"></span> one</span> <span style="color: #008080;"><span style="color: #008080;"></span> a</span>- (<span style="color: #0000ff;"><span style="color: #0000ff;">void</span></span>) touchesbegan: (nsset *) touches withevent: (uievent *)<span style="color: #0000ff;"><span style="color: #0000ff;">Event</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #000000;"><span style="color: #000000;">{</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">1. Create a core animation</span></span><span style="color: #008080;"><span style="color: #008080;"></span> the</span>Cakeyframeanimation *keyanima =<span style="color: #000000;"><span style="color: #000000;">[cakeyframeanimation animation];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>Keyanima.keypath =<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">transform.rotation</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">DEGREE/M_PI *</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>Keyanima.values = @[@ (-angle2radian (<span style="color: #800080;"><span style="color: #800080;">4</span></span>), @ (angle2radian (<span style="color: #800080;"><span style="color: #800080;">4</span></span>), @ (-angle2radian (<span style="color: #800080;"><span style="color: #800080;">4</span></span><span style="color: #000000;"><span style="color: #000000;">))];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> +</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span>Keyanima.removedoncompletion =<span style="color: #000000;"><span style="color: #000000;">NO;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> +</span>Keyanima.fillmode =<span style="color: #000000;"><span style="color: #000000;">kcafillmodeforwards;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> a</span>Keyanima.duration =<span style="color: #800080;"><span style="color: #800080;">0.1</span></span><span style="color: #000000;"><span style="color: #000000;">;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> at</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">set the number of animations to repeat</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span>Keyanima.repeatcount =<span style="color: #000000;"><span style="color: #000000;">maxfloat;</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">2. Add a core animation</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #000000;"><span style="color: #000000;">[self.iconView.layer Addanimation:keyanima forkey:nil];</span></span><span style="color: #008080;"><span style="color: #008080;"></span> in</span> <span style="color: #000000;"><span style="color: #000000;">}</span></span><span style="color: #008080;"><span style="color: #008080;"></span> -</span> <span style="color: #008080;"><span style="color: #008080;"></span> to</span> <span style="color: #0000ff;"><span style="color: #0000ff;">@end</span></span></pre><p><p></p></p><p><p>Image jitter of iOS core animations</p></p></span>