swift语言IOS8开发战记14 UIView Animation

简介:        这一话我们来增加一些动画效果,首先在上一话的基础上,我们想把我们的评价部分放到一个单独的view中,如下图中的红框部分建立一个全局变量transforView,定义为UIV...

       这一话我们来增加一些动画效果,首先在上一话的基础上,我们想把我们的评价部分放到一个单独的view中,如下图中的红框部分


建立一个全局变量transforView,定义为UIView类型,然后再viewDidLoad中初始化:

//transferView
        transforView = UIView(frame: CGRectMake(0, 100, 320, 200))
       self.view.addSubview(transforView)

可以看到这个view的y坐标是100,要把label和按钮放到这个view上,那么它们的坐标都是以transforView为基准的,所以把label和button的y坐标减100,然后添加的时候不要添加到view上,而改成添加到transforView上,如下:

 self.transforView.addSubview(label)

我们需要这个view上得内容有一些动画效果,设置如下:

  transforView.transform = CGAffineTransformMakeScale(0, 0)

参数设为0的时候view是不显示的:


现在我们来试一下让我们的菜单带有动画效果的弹出,首先是从无到有由远及近地出现,通过复写一个方法:

override func viewWillAppear(animated: Bool) {
        super.viewWillAppear(animated)
        UIView.animateWithDuration(0.7, delay: 0.0, options: nil, animations: {
            self.transforView.transform = CGAffineTransformMakeScale(1, 1)
            }, completion: nil)
    }

第一个参数0.7表示用0.7秒的时间去执行这个动画,效果大家可以自己试一试,还有一种是弹簧式的弹出的,这些方法都是UIView自己封装好的,我们只需要用,弹簧式弹出效果代码如下:

UIView.animateWithDuration(0.7, delay: 0.0, usingSpringWithDamping: 0.5, initialSpringVelocity: 0.5, options: nil, animations: { self.transforView.transform = CGAffineTransformMakeScale(1, 1)}, completion: nil)
usingSpringWithDamping是阻尼,initialSpringVelocity是速率,大家可以根据需要自行调整。

目录
相关文章
|
16天前
|
安全 编译器 Swift
Swift开发
Swift开发
34 9
|
16天前
|
机器学习/深度学习 TensorFlow Swift
Swift语言适合多个领域的开发
Swift语言适合多个领域的开发
47 9
|
11天前
|
开发框架 前端开发 Android开发
安卓与iOS开发中的跨平台策略
在移动应用开发的战场上,安卓和iOS两大阵营各据一方。随着技术的演进,跨平台开发框架成为开发者的新宠,旨在实现一次编码、多平台部署的梦想。本文将探讨跨平台开发的优势与挑战,并分享实用的开发技巧,帮助开发者在安卓和iOS的世界中游刃有余。
|
2天前
|
Java 调度 Android开发
安卓与iOS开发中的线程管理差异解析
在移动应用开发的广阔天地中,安卓和iOS两大平台各自拥有独特的魅力。如同东西方文化的差异,它们在处理多线程任务时也展现出不同的哲学。本文将带你穿梭于这两个平台之间,比较它们在线程管理上的核心理念、实现方式及性能考量,助你成为跨平台的编程高手。
|
4天前
|
存储 前端开发 Swift
探索iOS开发:从新手到专家的旅程
本文将带您领略iOS开发的奇妙之旅,从基础概念的理解到高级技巧的掌握,逐步深入iOS的世界。文章不仅分享技术知识,还鼓励读者在编程之路上保持好奇心和创新精神,实现个人成长与技术突破。
|
17天前
|
机器学习/深度学习 人工智能 移动开发
Swift语言作为苹果公司推出的现代编程语言
Swift语言作为苹果公司推出的现代编程语言
29 8
|
17天前
|
安全 Swift iOS开发
Swift语言
Swift语言
24 4
|
17天前
|
机器学习/深度学习 安全 数据挖掘
Swift语言的应用场景非常广泛
Swift语言的应用场景非常广泛
23 4
|
15天前
|
设计模式 Swift iOS开发
探索iOS开发:从基础到高级,打造你的第一款App
【10月更文挑战第40天】在这个数字时代,掌握移动应用开发已成为许多技术爱好者的梦想。本文将带你走进iOS开发的世界,从最基础的概念出发,逐步深入到高级功能实现,最终指导你完成自己的第一款App。无论你是编程新手还是有志于扩展技能的开发者,这篇文章都将为你提供一条清晰的学习路径。让我们一起开始这段旅程吧!
|
16天前
|
iOS开发 开发者
探索iOS开发中的SwiftUI框架
【10月更文挑战第39天】在苹果的生态系统中,SwiftUI框架以其声明式语法和易用性成为开发者的新宠。本文将深入SwiftUI的核心概念,通过实际案例展示如何利用这一框架快速构建用户界面,并探讨其对iOS应用开发流程的影响。