说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

iOS UIView动画实践(一):揭开Animation的神秘面纱

HTML文档下载 WORD文档下载 PDF文档下载
无论什么事物,长得好看总会更吸引目光,App同样也不例外,一款面相不错的App就算功能已经被轮子千百遍,依然会有人买账。本文是UIView Animation的第一篇,从极简的概念开始,为大家揭开Animation的神秘面纱。
2015-06-28-uiview-first-animation

前言

在一个看脸的社会中,不论什么事物,长得好看总是能多吸引一些目光。App同样不例外,一款面相不错的App就算功能已经被轮子千百遍,依然会有人买账,理由就是看得顺眼,于是平面设计人员越来越被重视。白驹过隙,斗转星移,人们已然不满足于静态的美感,于是动态的用户体验应运而生,平面设计人员捉襟见肘,是我们程序员出马的时候了。

这篇文章是UIView Animation的第一篇,从极简的概念开始,为大家揭开Animation的神秘面纱。我们以一个登录界面为例。美丽的太阳,婀娜的云,还有几个小山包,中间静躺着用户名、密码输入框和登录按钮。搁以前,这个界面许是会亮瞎眼现如今尼玛狗都嫌。所以我们的目标是赋予这个界面生命力。


注意:本文章基于Swift 2.0和Xcode 7 Beta 2编写。登录界面中的所有元素都已经连接到了代码中(outlet),在这个示例中我们先不使用Auto Layout和SizeClasses。

会动的输入框

我们的第一个场景应该是这样。用户打开App,启动画面过后显示登录界面,此时屏幕上还没有用户名和密码的输入框,下一秒他们从屏幕左侧飘然而至。

首先

我们需要在登录界面还没有展现给用户的时候把用户名和密码的输入框移至屏幕外面。打开ViewController.swift,在viewWillAppear()方法中添加以下代码:

self.username.center.x -= self.view.bounds.widthself.password.center.x -= self.view.bounds.width

这两行代码使用户名、密码输入框移出屏幕外,这里可以使用简单暴力的方式,直接让centerx减去屏幕宽度。

输入框移出屏幕

然后

我们在viewDidAppear()方法中添加以下代码:

UIView.animateWithDuration(0.5, animations: {    self.username.center.x += self.view.bounds.width    self.password.center.x += self.view.bounds.width})

animationWithDuration(_:animations:)UIView的类方法,从方法名就可以看出,该方法可使UIView动起来。它有两个参数:

  • duration:动画的持续时间。
  • animation:动画闭包,在这个闭包中你可以改变UIView的各种动画属性。

因为该方法是一个类方法,所以在闭包中你可以同时改变多个views的动画属性。所以在上述代码中,同时改变了用户名和密码输入框的位置。编译运行,我们可以看到如下效果:

                                       

但是由于两个输入框是同时从屏幕外滑入,略显呆板,所以我们用另一个方法再来润色一下。

传谷歌考虑和Facebook竞购众包地图Waze 谷歌工程师再次公布Windows漏洞 并称微软很难合作 Glassdoor评前景最令员工乐观的十大科技公司 华为上榜 下一代Android深度前瞻 第18级API功能揭秘 Web开发者不容错过的20段CSS代码 8大核心要点:我们能用HTML5 Canvas做什么? 移动周报:直接拿来用!最火的Android开源项目 前MySQL CEO:云将重新定义开发者的每一件事 CIO必知六件事,至少必须想到的! PPT集萃(四):来自五位中外专家分享的虚拟化和云存储实践 Jolla和Sailfish OS,那些你应该知道的事儿 不仅保值还能升值:过时的苹果电脑创下67.1万美元售价 三十天完成跨平台办公套件Joeffice的开发 jQuery 1.10.0和2.0.1同时发布 软件初创公司招投的九个必备技巧 BYOD浪潮即将来袭 六大年轻杀手重塑企业软件 灵活运用AppFlood:提高APP eCPM的10个技巧 事半功倍:你应该知道的HTML5五大特性 创建API监视器的五大技巧 流量激增15倍+ 乐蜂网桃花节大促背后的技术事 Windows 8和IE 10:如何保障视频播放? 云计算大会讲师秀之13:梁家恩,12年积累,构建永久免费的语音云平台 众望所归:智能手机芯片将为服务器所用 没有学位,他通过以下四步进入Google 谈谈Google Polymer以及Web UI框架的未来 保密入髓:前苹果员工揭示公司是如此善于保守秘密 调查显示:软件开发公司出现“人才荒” 三星拟6月20日在伦敦召开新品发布会 推手机新品Galaxy和ATIV 历届中国云计算大会PPT集萃(五):数据安全隐患解析与应对 搞趣网创始人:做不了阳春白雪 就做下里巴人 CMDN Club 28期:创业公司一定不要浪费资源 请教:各位大虾用PB从事那方面的工作,待遇如何?工作地点? Blue Workshop产品消息:.Net插件Replace it 1.3在CSDN和www.skycn.com.cn总下载量突破900次; SharpRefactor(C#代码重构工具)在CSDN的下 ActiveX 控件,要内嵌在Web页里实现编辑 小弟菜菜,各位大侠帮忙啊,小弟在线,完成就给分~~~~ jsp 文字出现乱码(急,有分奖赏) 哪里有完整的MINE解码组件 如何置换bitmap背景色? 寻求可共享的稳定的FTP 为什么文件没有被下载?!急 请问这是什么错误? 有关DATAGRID中((HyperLink)e.Item.Cells[0].Controls[0].FindControl("HyperLink2")).Text的问题,请帮帮我!! Include 的疑惑 寻找一个叫dingke的朋友,我将把邮箱给你,但我不小心弄丢了你的联系信箱,请速与我联系 为什么delphi程序总是有sysinit和system单元? 哪里有完整的MINE解码组件 有关关机程序的问题,帮帮忙。 安装树的问题?????????? 求助!关于ip地址数据库的 读多个串口时为什么时钟停止了? 安装树的问题?????????? 请教FxScanner是什么程序? 请大家出主意 为什么总是让我下载java虚拟机 调查一下大家在用VB做软件时最常用哪些控件呀, DataGrid_UpdateCommand里怎么取不到变化后的值 求助!关于ISAPI的问题? 一个简单问题,高分求解。。 我是东东树的妹妹,我有问题要问大家。关于jsp页面重定向问题? system.globaliztion.cultureinfo("en_US") 是不是C#中要进行字符集的转换处理 请问以下构造函数的sql有什么错误?提示AS附近由于发错误,字段名可以用变量吗? windows2000与windows2003的互相访问的问题? 一个简单基本的问题求教高手,急在线等 Blue Workshop产品消息:.Net插件Replace it 1.3在CSDN和www.skycn.com.cn总下载量突破900次; SharpRefactor(C#代码重构工具)在CSDN的下 J2ME中文显示问题,急!! ado.net 我发现JSP一个奇怪的问题???想要看看吗???进来呀!!! 昨晚2点多一个mm突然打电话找我聊天,各位觉得我有戏没? 哪里有完整的MINE解码组件 为什么我装完FreeBSD系统启动时Sendmail启动的特别慢,telnet时也很慢。 小弟初学JSP,想搞点源代码来学习学习。 难搞的MIDAS 局域网的问题,急死了, vb中继承及分辨率问题 ASP里有没有带下拉框的输入框? 象素数据和图象数据 公司的一个数据库被人del,现在想查查是谁什么时候做的? 为什么我的窗口无法操作 关于oracle数据库增量备份土土的一问。 ArrayList问题 请教:在CB6下面怎么用 TMediaPlayer 控件来录音? 南开的vb习题集!!! 硝酸根离子反应 什么时候生成NO 什么时候生成NO2 《王羲之学书》七岁善书窃而读之语羲之日不盈期月中的善,窃,语, 【高中化学】硝酸根发生氧化反应一定生成NO 或NO2吗? 硝酸根放电生成二氧化氮方程式,在酸性环境下 如何清理老石头污垢如题 谢谢了 大侠们 有哪种记忆型材料具有丁基橡胶的特性,同时要能防晒,防油物,急用 飞机的油是什么原料在航空飞机上用的油是什么原料构成的 请解释一下聪明和愚蠢与糊涂之间的关系?指鹿为马与糊涂之间的关系?聪明:形容人天资高,记忆和理解力强,视听,明察,智慧,才智.愚蠢:形容人笨,愚昧无知.糊涂:形容人脑子不灵活,犯傻,分辨不 乍舌的意思真不中的谁对啊 郁闷了 令人乍舌的解释 总说“市场经济”和“计划经济”.能不能举例一下它们的区别? 印度开建“全球最高”塑像印度开建“全球最高”塑像 呼吁民众捐斯诺登找到工作 在俄社交网站上班英国检方称《世界新闻报》曾窃听哈里王“歧视胖子” 香奈儿艺术总监惹官司戴“谷歌眼镜”开车遭传讯偷渡客残杀5人 凸显底层华人困境普京登顶权势榜 只怪奥巴马不争气首个完整境外诈骗集团被批捕新一轮伊核对话可能取得重要进展奥巴马豪华座驾“野兽”细节曝光 具备温格:业余球员知道自己为何奋斗2016年1月招商银行信用卡盗刷及追烧腊实体店培训与烧腊培训学校哪个强?机械硬盘摔坏了,怒拆惠普小苍本升级S春节短信急剧下滑,运营商如何突破?赛睿(SteelSeries)KAN还在过年?日本要引爆全球金融危机了!周小川发声:首度回应国际投机力量为何一篇文章带你梳理春节期间刷爆朋友的“春节假期7天北京高速公路交通量接近千春节7天发生18起死3人以上交通事故
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘