`
zjjzmw1
  • 浏览: 1366488 次
  • 性别: Icon_minigender_1
  • 来自: 开封
社区版块
存档分类
最新评论

动画,锚点,定时器

    博客分类:
  • iOS
阅读更多

///设置动画的节奏。。。。EaseIn 就是刚进入的时候慢。。。

 

animation.timingFunctino  = [CAMediaTimingFunction functionWithName:KCAMediaTimingFunctionEaseInaseOut];

 

 

 if (self.link) return;    

    // 1秒内刷新60次——刷新快的时候比NSTimer好。

    CADisplayLink *link = [CADisplayLink displayLinkWithTarget:self selector:@selector(update)];

    [link addToRunLoop:[NSRunLoop mainRunLoop] forMode:NSDefaultRunLoopMode];

 

 

    self.link = link;

 

- (void)update

{

    self.centerWheel.transform = CGAffineTransformRotate(self.centerWheel.transform, M_PI / 500);

 

 

}

 

 

/**

 *  开始选号

 */

- (IBAction)startChoose {

    [selfstopRotating];

    

    CABasicAnimation *anim = [CABasicAnimationanimation];

    anim.keyPath = @"transform.rotation";

    anim.toValue = @(2 * M_PI * 3);

    anim.duration = 1.5;

    // 开头和结尾比较慢,中间快

    anim.timingFunction = [CAMediaTimingFunctionfunctionWithName:kCAMediaTimingFunctionEaseInEaseOut];

    anim.delegate = self;

    [self.centerWheel.layeraddAnimation:anim forKey:nil];

    

    self.userInteractionEnabled = NO;

}

 

- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag

{

    

    

    self.userInteractionEnabled = YES;

///两秒后执行里面的方法。

    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{

        [selfstartRotating];

    });

 

 

}

分享到:
评论

相关推荐

    JS 锚点

    2. **自定义事件**:在JavaScript锚点中,我们可以监听链接的点击事件,执行自定义逻辑,如加载相关内容、动画效果等。 ```javascript document.querySelectorAll('.custom-anchor').forEach(anchor => { anchor...

    点击锚点链接时页面滚动的特效(Javascript Smooth Scroll)

    平滑滚动的核心在于使用JavaScript监听锚点链接的点击事件,然后通过定时器控制浏览器逐步改变滚动位置,而不是立即跳转。这种方法可以模拟出平滑的动画效果,使得页面滚动更加自然。 **二、实现步骤** 1. **HTML...

    外卖:实现类似锚点功能 (源码).zip

    源码可能实现了平滑滚动动画,通过CSS3的`transition`或JavaScript的定时器来控制页面滚动速度。 4. **兼容性处理**:考虑到不同浏览器的差异,源码可能包含了兼容性检查和修复代码,确保在各种环境下都能正常工作...

    用Javascript实现锚点(Anchor)间平滑跳转

    当时间达到设定的总持续时间,我们清除定时器,并设置一个微小的延迟(13毫秒),确保滚动动作在动画结束后完成,以防止浏览器的即时响应导致的跳跃。 总结来说,通过JavaScript实现锚点间的平滑跳转,主要涉及以下...

    核心动画编程指南

    手动动画包括缓冲动画和基于定时器的动画,开发者可以定义动画的起始值、结束值和动画函数,甚至可以模拟物理效果。性能调优方面,重要的是区分CPU和GPU的工作,通过Instruments工具对CPU和GPU进行性能测量,而不是...

    ios核心动画高级技巧.

    - 基于定时器的动画和定时帧。 - 物理模拟的实现和动画的性能调优,CPU与GPU的测量和优化。 7. 高效绘图和图层性能 - 绘图技术包括矢量图形和脏矩形的异步绘制。 - 图像IO加载和缓存的文件格式。 - 减少图层...

    ios核心动画高级技巧

    此外,缓冲动画、速度自定义和定时器动画等也被介绍为高级动画技术的一部分。在性能优化方面,作者讲解了如何通过减少图层数量和避免离屏渲染来提高性能,并推荐使用高效绘图技术,如矢量图形、脏矩形和异步绘制。 ...

    Flash热气球飞行动画.rar

    通过调整锚点和控制点,可以创建出各种形状和细节,如热气球的球体、篮筐和绳索。 至于"codesc.net"这个文件,可能是源文件的存放网址或者作者的网站链接,便于用户查看更多的教程和资源。通过访问这个地址,可能能...

    iOS动画高级技巧

    基于定时器的动画通常用于实现游戏中的帧动画。通过定期更新图层属性,可以创建出连续的画面变化。 **物理模拟** 物理模拟是指利用物理引擎来模拟现实世界的物理现象,如重力、摩擦力等。在Core Animation中,可以...

    iOS 动画CoreAnimation

    - **基于定时器的动画**: 使用定时器来更新动画状态。 #### 十三、性能调优 **CPU VS GPU** - **测量而非猜测**: 使用工具来识别性能瓶颈。 - **Instruments**: 分析应用性能的工具。 - **高效绘图**: 减少不必要的...

    viewpager循环滑动自动滑动

    `ViewPager` 内部通过`PagerAdapter` 来管理页面内容,`PagerAdapter` 负责创建和销毁页面,以及处理页面间的过渡动画。 2. **自动滑动实现**: 要实现自动滑动,可以借助`Handler` 和`Runnable` 。在`Runnable` ...

    ios-AnimatedClock.zip

    接下来,利用定时器(NSTimer)来驱动时钟的动画。在iOS中,我们可以创建一个NSTimer对象,指定一个时间间隔和一个选择器,当定时器触发时,执行选择器对应的方法。例如,我们可以设置一个每秒触发一次的定时器,更新...

    iOS Core Animation

    - **基于定时器的动画**:通过定时器更新图层状态实现动画效果。 #### 性能调优 - **CPU vs GPU**:了解哪些操作更适合在CPU上运行,哪些更适合在GPU上运行。 - **测量**:使用工具如 Instruments 来监控应用性能...

    【JavaScript源代码】vue实现广告栏上下滚动效果.docx

    这里定义了一个包含广告数据的数组 `msg`,以及一个布尔值 `animate` 用于控制滚动动画,和一个定时器引用 `setInTime`。 在 `mounted` 生命周期钩子中,我们设置了定时器 `setInTime`,每隔 3 秒调用 `showMarquee...

    超实用自适应相册自动轮播大图jquery特效代码

    8. 锚点链接和懒加载:对于大型相册,可以添加锚点链接让用户直接跳转到特定图片,同时结合懒加载技术,只在图片进入视口时加载,进一步提升页面加载速度。 通过以上分析,"超实用自适应相册自动轮播大图jquery特效...

    QcustomPlot绘制动态点位,这些点位数据是随机数生成的

    在IT行业中,可视化工具是数据分析和展示的重要环节,QcustomPlot是一个基于Qt库的自定义图形组件,...在实际应用中,还可以进一步扩展,如添加动画效果、自定义颜色方案,或者与其他Qt组件结合,实现更复杂的功能。

    QML元素详细介绍

    - **AnchorAnimation**:改变元素的锚点位置动画。 - **PauseAnimation**:实现暂停动画效果。 - **SmoothedAnimation/SpringAnimation**:分别用于平滑过渡和弹跳效果的动画。 - **PropertyAction/ScriptAction**:...

Global site tag (gtag.js) - Google Analytics