苹果开发之一个简单的动画效果(方块来回反复移动)

1,下面是一个简单的动画效果
使用 UIView.animateWithDuration() 给方块添加动画,让其在屏幕左侧与右侧间不断地来回运动。 

.Autoreverse参数表示:动画运行到结束点后仍然以动画方式回到初始点(本例是x坐标)

 

.Repeat参数表示:动画重复执行

 

   开发之一个简单的动画效果(方块来回反复移动)-我的世界方块学园动画">      

import UIKit
 
class ViewController: UIViewController {
     
    // 方块
    var block:UIView!
     
    override func viewDidLoad()
    {
        super.viewDidLoad()
         
        //创建方块
        block = UIView(frame:CGRectMake(0, 0, 25, 25))
        block.center.y = self.view.bounds.height / 2 //方块垂直居中
        block.backgroundColor = UIColor.darkGrayColor()
        self.view.addSubview(block)
         
        //播放动画
        playAnimation()
    }
     
    //播放动画
    func playAnimation()
    {
        UIView.animateWithDuration(0.6, delay: 0.4, options: [.Repeat, .Autoreverse],
            animations: {
                self.block.frame.origin.x = self.view.bounds.width - self.block.frame.width
            },
            completion: nil)
    }
     
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}

2,添加多个大小不一的方块,并设置动画

方块随着尺寸变小,对应动画逐级添加 delay 延时,看起来有种跟随的效果。

 

import UIKit
 
class ViewController: UIViewController {
     
    // 方块
    var block1:UIView!
    var block2:UIView!
    var block3:UIView!
     
    override func viewDidLoad()
    {
        super.viewDidLoad()
         
        //创建方块
        block3 = UIView(frame:CGRectMake(0, 0, 15, 15))
        block3.center.y = self.view.bounds.height / 2 //方块垂直居中
        block3.backgroundColor = UIColor.darkGrayColor()
        self.view.addSubview(block3)
         
        block2 = UIView(frame:CGRectMake(0, 0, 20, 20))
        block2.center.y = self.view.bounds.height / 2 //方块垂直居中
        block2.backgroundColor = UIColor.darkGrayColor()
        self.view.addSubview(block2)
         
        block1 = UIView(frame:CGRectMake(0, 0, 25, 25))
        block1.center.y = self.view.bounds.height / 2 //方块垂直居中
        block1.backgroundColor = UIColor.darkGrayColor()
        self.view.addSubview(block1)
         
        //播放动画
        playAnimation()
    }
     
    //播放动画
    func playAnimation()
    {
        UIView.animateWithDuration(0.6, delay: 0.4, options: [.Repeat, .Autoreverse],
            animations: {
                self.block1.frame.origin.x =
                    self.view.bounds.width - self.block1.frame.width
            },
            completion: nil)
         
        UIView.animateWithDuration(0.6, delay: 0.45, options: [.Repeat, .Autoreverse],
            animations: {
                self.block2.frame.origin.x =
                    self.view.bounds.width - self.block2.frame.width
            },
            completion: nil)
         
        UIView.animateWithDuration(0.6, delay: 0.5, options: [.Repeat, .Autoreverse],
            animations: {
                self.block3.frame.origin.x =
                    self.view.bounds.width - self.block2.frame.width
            },
            completion: nil)
    }
     
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}

时间: 2024-10-22 21:27:36

苹果开发之一个简单的动画效果(方块来回反复移动)的相关文章

c语言-c,c++实现简单的动画效果

问题描述 c,c++实现简单的动画效果 一个六数码的问题,六个数经过一定的变化变成有序的数 例如 2 5 3 1 4 6 变成了 1 2 3 4 5 6 控制台程序已经写好了,黑白框中能运行处正确结果 目前想做一个简单的动画效果演示一下,需要学习哪些知识,不要太复杂的 = = 网上找的说的太空泛,完全没有方向233 解决方案 ios开发之简单实现loading动画效果js动画效果简单实现iOS简单的动画效果实现 解决方案二: 动画效果演示一下,你要演示什么 解决方案三: 你想要什么样的动画? 最

Android开发中MJRefresh自定义刷新动画效果_Android

[一]常见用法 最原始的用法,耦合度低,但是不能统一管理.我们需要在每一个控制器都写以下代码,很繁琐,以后项目修改起来更繁琐,得一个控制器一个控制器的去定位.修改. 1.1 使用默认刷新(耦合度底,但是想统一修改起来特别麻烦) self.tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{ //在这里执行刷新操作 }]; self.tableView.mj_header = [MJRefreshNorm

Android开发中MJRefresh自定义刷新动画效果

[一]常见用法 最原始的用法,耦合度低,但是不能统一管理.我们需要在每一个控制器都写以下代码,很繁琐,以后项目修改起来更繁琐,得一个控制器一个控制器的去定位.修改. 1.1 使用默认刷新(耦合度底,但是想统一修改起来特别麻烦) self.tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{ //在这里执行刷新操作 }]; self.tableView.mj_header = [MJRefreshNorm

ExtJS简单的动画效果2(ext js淡入淡出特效)

  Ext 开发小组则提供了 Fx 类集中处理了大部分常用的 js 动画特效,减少了我们自己手写代码的复杂度.   面我给出一个简单的实例代码,其中囊括了大部分的 Ext 动画效果: (注意导入js和css文件的目录,图片自己设置)   CartoonExt.js var WIDTH = 300; // 图片宽 var HEIGHT = 300; // 图片高 function reset() { // 以 Ext 获得指定元素,并指定此元素左边距.上方边距.右边距.下方边距 Ext. get

jQuery实现简单滚动动画效果_jquery

动画的思路很简单,点击页面上一个元素,页面滚动到指定位置.下面介绍一下我3个小时百度的研究成果: 首先是html部分: <html> <body> <a>顶部</a> <a>中部</a> ...<p>持续添加直到出现滚动条</p>... </body> </html> 先添加两个<a>元素作为按钮.然后对<a>元素进行补充: <html> <bo

苹果开发之iOS加入购物车动画效果

 代码如下 复制代码 #pragma mark -购物篮按钮点击事件 -(void)shoppingCartButtonAction:(UIButton*)sender {     if ([[userDef objectForKey:@"id"]isEqualToString:@"0"]) {         [self showHUDTextOnly:@"请登录后,再进行操作" ];         return;     }     NSD

ExtJS简单的动画效果(ext js淡入淡出特效)

1.html页面:Application HTML file - index.html <html> <head> <title>ExtJs fadeIn() and fadeOut() example</title> <link rel="stylesheet" type="text/css" href="extjs/resources/css/ext-all.css"> <st

Jquery实现简单的动画效果代码_jquery

复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title

android开发-android绚丽动画效果开发求助

问题描述 android绚丽动画效果开发求助 最近在做有一个项目,设计师很喜欢各种绚丽,复杂的动画效果,而且要求适配的机型比较广,这种情况下.如果单纯用图片去做动画效果,会发现图片稍微大点就会很卡. 我们想在app中何如比较轻量级的2D游戏引擎来实现,不知道这个想法是否可以,如果可以请各位大神推荐下有什么好的游戏引擎. 如果这方法不行,请各位大神指教下该怎么做? 解决方案 大神呢???求帮忙~ 解决方案二: libgdx. 简单的动画效果自己实现就好