我一直在看一些关于3d touch的教程,而且在大多数情况下看起来相当简单.但是,所有教程都是关于使用多个视图控制器的常规应用程序(使用storyboard ID,prevIEwControllers等)
是否可以将3D触摸与SpriteKit集成,SpriteKit通常只有1个VIEwController.
我的计划是
1)HomeScreen快捷方式,可以加载不同的场景(商店场景,1级,2级等)
2)Peek和Pop,也许是菜单.你甚至可以使用偷看和d出SKNodes等东西吗?
感谢您的任何提示或建议
解决方法 是的,您可以集成3D touch和SpriteKit.使用默认的SpriteKit游戏项目模板(Swift),将您的GameScene设置为UIVIEwControllerPrevIEwingDelegate并实现协议的方法,如下所示:
public class GameScene: SKScene,UIVIEwControllerPrevIEwingDelegate { public func prevIEwingContext(prevIEwingContext: UIVIEwControllerPrevIEwing,vIEwControllerForLocation location: CGPoint) -> UIVIEwController? { return UIVIEwController() } //Pop public func prevIEwingContext(prevIEwingContext: UIVIEwControllerPrevIEwing,commitVIEwController vIEwControllerToCommit: UIVIEwController) { return }}
在GameVIEwController.swift的vIEwDIDLoad中,添加以下内容:
if let scene = GameScene(filenamed:"GameScene") { if self.traitCollection.forcetouchCapability == .Available { registerForPrevIEwingWithDelegate(scene,sourceVIEw: scene.vIEw!) }}
在委托方法中,我返回一个空视图控制器.您可以创建一个类级变量,并使用适当的peek-type视图实例化此VC.再一次,一个非常简单的例子.如果要从AppIcon交互添加3D touch,则需要修改Info.pList并从AppDelegate添加功能.祝你好运!
总结以上是内存溢出为你收集整理的swift – 3D Touch和SpriteKit全部内容,希望文章能够帮你解决swift – 3D Touch和SpriteKit所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)