iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了xcode – 我如何在Swift中永远重复一个动作?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

http://i.imgur.com/xkWTk9i.png我已经让这个矩形从上到下.我遇到的问题是我希望它每2秒重复一次,所以另一个矩形跟随它.我希望我的代码每隔2秒生成一个矩形,然后让它重复,就像绿色的管道一样.谢谢. (我之前已经开始工作,但我错误地删除了我的项目,并且无法弄清楚我是如何做到的.)我在Swift中使用Spritekit. . class GameScene: SKScene
http://i.imgur.com/xkWTk9i.png我已经让这个矩形从上到下.我遇到的问题是我希望它每2秒重复一次,所以另一个矩形跟随它.我希望我的代码每隔2秒生成一个矩形,然后让它重复,就像绿色的管道一样.谢谢. (我之前已经开始工作,但我错误删除了我的项目,并且无法弄清楚我是如何做到的.)我在Swift中使用Spritekit.

.

@H_301_13@class GameScene: SKScene { let sprite = SKSpriteNode(imagenamed: "Rectangle 12") override func didMoveToView(view: SKView) { self.addChild(spritE) //run doAction function doAction() } //movement of rectangle func createRectangle() { let moveToBottom = SKAction.moveByX(0,y: 0 - self.frame.size.width,duration: NSTimeInterval (3.0)) let removeTheNode = SKAction.removeFromParent() let moveAndRemovePipes = SKAction.sequence([moveToBottom,removeTheNode]) let repeatAction = SKAction.repeatActionForever(moveAndRemovePipes) sprite.xScale = 1 sprite.yScale = 1 sprite.position = CGPoint(x:0,y:0) sprite.runAction(repeatAction) } //spawn multiple rectangles after 3 or 4 seconds func doAction() { let generateRectangles = SKAction.sequence([ SKAction.runBlock(self.createRectanglE),SKAction.waitForDuration(NSTimeInterval(3.0))]) let endlessAction = SKAction.repeatActionForever(generateRectangles) runAction(endlessAction) } }

解决方法

您可以使用NSTimer重复执行功能.

@H_301_13@override func didMoveToView(view: SKView) { self.addChild(spritE) var timer = NSTimer.scheduledTimerWithTimeInterval(0.2,target: self,SELEctor: "doAction",userInfo: nil,repeats: truE) }

这将每2秒重复执行一次函数.

编辑:

你也可以这样做:

@H_301_13@override func didMoveToView(view: SKView) { self.addChild(spritE) runAction(SKAction.repeatActionForever(SKAction.sequence([SKAction.runBlock(doAction),SKAction.waitForDuration(1.0)]))) }

大佬总结

以上是大佬教程为你收集整理的xcode – 我如何在Swift中永远重复一个动作?全部内容,希望文章能够帮你解决xcode – 我如何在Swift中永远重复一个动作?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。