草庐IT

Sprite-Kit

全部标签

ios - 键盘未被关闭 : Facebook Account Kit iOS 11

我已经集成了FacebookAccountKitSDKv.4.26.0。以下是我遇到困难的场景:当用户单击登录时,会显示使用电话号码登录Controller,并且该屏幕上会立即出现键盘以输入电话号码。现在我点击屏幕上文本字段和键盘之外的任何地方来触发键盘关闭事件。但是从iOS11.*开始,键盘不会被关闭,如果我通过单击后退按钮导航回来,在这种情况下键盘也会保持打开状态。键盘关闭操作在iOS11.0之前工作正常。以下是我尝试解决此问题的步骤:1.使用为身份验证提供的AKFViewController实例,我尝试执行view.endEditing(true)以从AKFViewControl

swift - 快节奏的 SpriteKit 游戏具有不规则的 CPU 事件,并且尽管帧速率保持在高水平,但仍会出现抖动/滞后 - Swift

我在一个简单但快节奏的SpriteKit游戏中遇到了问题,但我已经将我的代码缩减为一个弹跳球,但问题的程度仍然较小:overridefuncdidMove(toview:SKView){super.didMove(to:view)physicsWorld.contactDelegate=selfphysicsWorld.speed=1physicsWorld.gravity=CGVector(dx:0.0,dy:0.0)letborderBody=SKPhysicsBody(edgeLoopFrom:self.frame)borderBody.friction=0self.physic

ios - 如何将 SpriteKit 中的单个游戏场景添加到普通的 Single View Swift 应用程序中

我使用swift使用普通的单一View类型的应用程序构建了一个简单的问答游戏。但是现在,作为更新的一部分,我想在游戏中添加一个更复杂的琐事关卡,这个关卡将使用SpriteKit构建,带有动画等等,但我不确定如何过渡和显示spriteKit游戏场景在一个简单的单Viewswift应用程序中,然后转换回常规ViewController。我确实四处搜索,但我找不到这个问题的任何具体答案,只能反过来。非常感谢任何帮助。 最佳答案 不确定您是否仍在尝试这样做,但您可以很容易地在UIKit和SpriteKit场景之间转换,执行类似的操作:let

ios - 使 SKLabelNode 可编辑

我正在尝试找出一种方法,在点击SKLabelNode时调出键盘,然后让该标签可编辑,类似于UITextView或UITextField。我已经将UITextView添加到SKScene,但由于它位于场景的顶部,因此这是一个相当笨拙的解决方案。我宁愿尝试以下两种方法之一:1.当点击sklabelnode时出现键盘,或者作为最坏的情况-键盘始终打开并且任何输入都反射(reflect)在SkLabelNode上。为了不重新发明轮子,有没有一种方法可以自定义SKLabelNode使其更像UITextView或UITextField?用Objective-C或Swift回答就可以了。

ios - Swift:如何在 SpriteKit 中跟踪和传达场景之间的分数

我正在用spritekit构建一个游戏,该游戏具有三个场景:主菜单、游戏场景和游戏结束场景。我需要主菜单显示最高​​分,游戏场景显示当前分数,游戏结束场景显示最高分和玩家上次游戏的分数。我将如何在场景之间传输这些分数数据以及我将如何跟踪玩家的高分?环顾四周,我发现了有关NSUserDefaults的内容,但我不知道如何正确实现它。诚然,我是SpriteKit的新手,一般来说是编码方面的新手,所以我需要非常具体的说明。抱歉,如果这个问题相当宽泛。谢谢。 最佳答案 NSUserDefaults是跟踪分数的好方法。保存高分:letx:In

ios - 复杂的敌人行为和模式

我想在我的SpriteKit游戏中稍微改变一下我的敌人。他们是如此......可以预测。《以撒的结合:重生》中遇到的各种敌人启发了我。例如,假设我想实现在enemy.health时split成两个较小的敌人的敌人。.在一个简单的场景中,这可以通过遍历我所有的敌人从我的主场景更新循环来完成。像这样的东西:if(enemy.health这可能适用于简单的情况。但这是我绝对想避免出现在我的主场景更新循环之外的东西。问题是我的敌人类实际上是SKSpriteNode的子类.对于这种情况,理想情况下我想要一个新类,例如ComplexEnemy或EnemyGroup类来处理这个,这样我就可以实现更复

ios - Xcode 6.3 : 8. 0 或 8.0.2 模拟器

这个问题在这里已经有了答案:HowtoinstalliOS7.0andiOS8.0SimulatorsinXcode6.1?(1个回答)关闭7年前。问题:Xcode6.3没有8.0模拟器;我使用的是swift1.2,所以我无法在早期版本的Xcode下编译该项目;我在iOS8.0设备上有很多spritekit崩溃(崩溃报告不是很有用,它们与spritekit本身有关);它在iOS7.1和8.1+上运行良好有没有办法从Xcode6.3在8.0或8.0.2模拟器上安装构建?崩溃报告示例:Thread:Crashed:com.apple.main-thread0SpriteKit0x00000

swift - 随机生成一个 Spritekit 节点

我正在制作一个游戏,其中有一个节点从屏幕顶部生成并掉落。但是我想让节点在3秒的时间间隔内随机生成。所以一个在1秒内生成,下一个在2.4秒内生成,下一个在1.7秒内生成,等等。我正在为这个代码应该是什么而苦苦挣扎。我目前拥有的用于生成节点的代码:letwait=SKAction.waitForDuration(3,withRange:2)letspawn=SKAction.runBlock{addTears()}letsequence=SKAction.sequence([wait,spawn])self.runAction(SKAction.repeatActionForever(sp

swift - 如何快速停止 Sprite 套件更新?

overridefuncupdate(currentTime:NSTimeInterval){//...}当我的游戏结束时,我想停止spritekit的更新。我应该在swift中使用哪个函数? 最佳答案 你可以使用bool就像当你的游戏结束时只是让true并将if条件放在你的更新方法中,如:overridefuncupdate(currentTime:NSTimeInterval){//ItwillexecutetillgameOverisfalsebutwhenyoumakeyourgameOvertruethenitwillno

swift - 如果分数增加,为什么我的 SKLabelNode 会离开页面

所以我有一个显示用户高分的SKLabelNode,当用户高分例如为5时,标签位置与分数为35或100时的位置不同标签离开屏幕,请有人帮忙解决这个问题,如果高分发生变化,有没有办法让标签保持在同一位置?我需要对标签施加限制吗?顺便说一句,这是在spritekitand中使用swift 最佳答案 您想使用SKLabelNodeHorizontalAlignmentMode.Left在这里,像这样:classGameScene:SKScene{varlabel=SKLabelNode(fontNamed:"ArialMT")varscor