将源代码从 swift playground 移动到“sources”下的 swift 文件

Posted

技术标签:

【中文标题】将源代码从 swift playground 移动到“sources”下的 swift 文件【英文标题】:moving the source code from within swift playground to a swift file under "sources" 【发布时间】:2018-04-01 03:41:14 【问题描述】:

我在一个快速的操场上有一个 SpriteKit 场景(一个 SKView 类,它附带了所有的功能,例如 didMove、touchesBegan 和 Update),当实时视图运行时,它总是对触摸和交互的响应非常慢。我的问题是将整个源代码从 swift playground 移动到一个单独的 swift 文件,并将其导入“Sources”文件夹以帮助实时查看响应,无论它是否有帮助,我该怎么做?

这是我的 swift playground 的样子:

import PlaygroundSupport
import SpriteKit
import AVFoundation
import UIKit

class GameScene: SKScene 
    //my source code 
  

 let sceneView = SKView(frame: CGRect(x:0 , y:0, width: 720, height: 540))
      if let scene = GameScene(fileNamed: "GameScene") 
           scene.scaleMode = .aspectFill
           sceneView.presentScene(scene)


PlaygroundSupport.PlaygroundPage.current.liveView = sceneView

“资源”文件夹中还有大约十个 png 和几个 .mp3,以及 Action.sks 和 GameScene.sks。

【问题讨论】:

我发现 Playgrounds 存在各种错误和性能问题,尤其是在使用 SpriteKit 时。我倾向于使用 SpriteKit 模板创建一个新的测试项目,而不是游乐场。这种方式的问题要少得多。 @peacetype 是的,我最终发现将 GameScene 类移动到一个单独的 swift 文件中会更快,因为实时视图会立即渲染所有内容,而不是逐行渲染游乐场。无论如何,谢谢! 【参考方案1】:

早一点发现,当我将 GameScene 类移动到一个单独的 swift 文件中时,一切都会非常顺利地渲染。

【讨论】:

以上是关于将源代码从 swift playground 移动到“sources”下的 swift 文件的主要内容,如果未能解决你的问题,请参考以下文章

如何将数据从 Playground 页面传递到 Swift Playgrounds 中的另一个 Playground 页面?

Swift 4 Playground - 从 JSON 获取对象/结果

Swift – Balloons.playground – 无法将“纹理”添加到时间线

苹果将代码教学应用Swift Playgrounds引入Mac

更改文件时,Swift Playground 散文消失了

Xcode Playground 因非 Swift 代码而崩溃