今天真是闲来无事,随便看了一下苹果官方的Swift教程。其实也仅仅是看了第一章内容,记住了一点几本的语法。
然后想起昨天自己没事写的大雪纷飞的动画,自己就拿起来练一下手。
说真的做Demo的时候还真遇到几个比较棘手的问题。
不过有Google无难题,下面就不说废话了。
具体思路可以看OC实现的版本,
http://www.jb51.cc/article/p-xekkzhyt-zh.html
下面直接上Swift的源代码:
import UIKitclass VIEwController: UIVIEwController { //定义常量 let screenHeight = UIScreen.mainScreen().bounds.size.height let screenWIDth = UIScreen.mainScreen().bounds.size.wIDth let plus_height = UIScreen.mainScreen().bounds.size.height/CGfloat(25) //定义变量 var imageArray = [UIImageVIEw]() //重载方法 overrIDe func loadVIEw() { var imageVIEw = UIImageVIEw(image: UIImage(named: "backgound.jpg")) imageVIEw.contentMode = UIVIEwContentMode.ScaleAspectFill self.vIEw = imageVIEw } overrIDe func vIEwDIDLoad() { super.vIEwDIDLoad() for var i = 0; i < 1000; ++i { var imageVIEw = UIImageVIEw(image: UIImage(named: "sNow")) var x = (arc4random()%20 + 10) imageVIEw.frame = CGRectMake(CGfloat(arc4random()%UInt32(UIScreen.mainScreen().bounds.size.wIDth)),CGfloat(-30),CGfloat(x),CGfloat(x)) imageVIEw.Alpha = CGfloat(arc4random_uniform(9))/10.0 self.vIEw.addSubvIEw(imageVIEw) self.imageArray.append(imageVIEw) } //创建时钟,并且添加到主循环中 var link = CAdisplaylink(target: self,selector: Selector("makeSNow")) link.addToRunLoop(NSRunLoop.mainRunLoop(),forMode: NSDefaultRunLoopMode) } func makeSNow() { if self.imageArray.count > 0 { var imageVIEw = self.imageArray[0] self.imageArray.removeAtIndex(0) self.sNowFall(imageVIEw) } } func sNowFall (imageVIEw:UIImageVIEw) { UIVIEw.animateWithDuration(5,animations: { () -> VoID in imageVIEw.frame = CGRectMake(imageVIEw.frame.origin.x,self.screenHeight,imageVIEw.frame.size.wIDth,imageVIEw.frame.size.height) imageVIEw.transform = CGAffinetransformMakeScale(0.3,0.3); imageVIEw.transform = CGAffinetransformRotate(imageVIEw.transform,CGfloat(M_PI)) },completion: { finished in var x = (arc4random()%20 + 10) imageVIEw.frame = CGRectMake(CGfloat((arc4random()%UInt32(UIScreen.mainScreen().bounds.size.wIDth))),CGfloat(x)) self.imageArray.append(imageVIEw) }) }}总结
以上是内存溢出为你收集整理的Swift版本之大雪纷飞全部内容,希望文章能够帮你解决Swift版本之大雪纷飞所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)