dyld:未找到符号:__Tdd1212oreGraphics7CGFloat

时间:2014-07-24 11:24:13

标签: ios iphone xcode swift sprite-kit

我使用Apple的新编程语言Swift在Xcode 6中编写SpriteKit游戏。我对swift相对较新,我能够在Xcode 6 Beta 3中无错误地构建应用程序。但是,自从Beta 4发布以来,我一直无法在我的iPhone上运行该应用程序,但iOS模拟器仍然有效

我的iPhone正在运行iOS 8 Beta 4和应用程序,如果在我的Mac上运行Xcode 6 Beta 4,它正在使用OS X Yosemite Beta 4.启动应用程序时,我在打开游戏的第一个场景之前收到错误,完整的错误在这里:

dyld:未找到符号:__Tdd1212oreGraphics7CGFloat   参考自:/private/var/mobile/Containers/Bundle/Application/5FA54F59-06DB-4044-AB46-B53431A70E79/Rollat​​hon.app/Rollat​​hon   预计在:/private/var/mobile/Containers/Bundle/Application/5FA54F59-06DB-4044-AB46-B53431A70E79/Rollat​​hon.app/Frameworks/libswiftCoreGraphics.dylib  in /private/var/mobile/Containers/Bundle/Application/5FA54F59-06DB-4044-AB46-B53431A70E79/Rollat​​hon.app/Rollat​​hon (lldb)

我的第一个场景是:

import SpriteKit
import CoreGraphics

class GameScene: SKScene {
let playBtn = SKSpriteNode(imageNamed: "playBtn")
let title = SKSpriteNode(imageNamed: "title")
let settings = SKSpriteNode(imageNamed: "settings")

override func didMoveToView(view: SKView) {
    // Setup background
    self.backgroundColor = UIColor(hex: 0x80D9FF);

    // TODO: ADD SETTINGS

    // Setup play button
    self.playBtn.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame))
    self.playBtn.setScale(0.2)

    // TODO: Setup title image
    //self.title.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMaxY(self.frame) - (self.title.size.height / 1.5))

    // Add scene children
    self.addChild(self.playBtn)
}

override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
    /* Called when a touch begins */

    for touch: AnyObject in touches {
        let location = touch.locationInNode(self)
        if self.nodeAtPoint(location) == self.playBtn {
            // User has pressed play
            var scene = PlayScene(size: self.size)
            let skView = self.view as SKView
            skView.ignoresSiblingOrder = true
            scene.scaleMode = .ResizeFill
            scene.size = skView.bounds.size
            skView.presentScene(scene)
        }

    }
}

override func update(currentTime: CFTimeInterval) {
    /* Called before each frame is rendered */
}

}

这很简单,这就是为什么我想知道问题是否是由另一个场景造成的;如果需要,我会上传更多场景。

先谢谢了, 英里。

1 个答案:

答案 0 :(得分:5)

从您的设备中删除该应用,进行清理,然后再次运行。可能旧版本的某些编译代码被遗忘了。