2017-02-14 105 views
0

剛開始使用Xcode中的Swift,我已經運行了許多教程。不幸的是他們還沒有涉及一些重要的基礎知識我已經導入了資產目錄(包含子目錄)並選擇了「複製(根據需要)」。該文件夾是藍色的,並出現在Build Phases - > Copy Bundle Resources中。我已經使用了下面的簡單線條,但圖像在模擬器中仍然顯示爲紅色的「X」。我已經做了一個清理/構建/重新啓動,它仍然無法正常工作。未顯示文件夾中的圖片

if let ship = SKSpriteNode(fileNamed: "cannon.png") 
    { 
     ship.position = CGPoint(x: self.size.width/2, y: self.size.height/2) 
     self.addChild(ship) 
    } 

引用的文件位於Assets/Sprite Images/cannon.png

我怎樣才能獲得形象出現?

編輯

我已經下載了Space Invaders Tutorial Starter Project和它使用的是「資產」文件夾的想法,不正是我一直嘗試。 「Images.xcassets」文件夾中沒有列出任何內容,所以我不知道爲什麼我的文件沒有加載。我是否需要將其識別爲特定的文件夾?

回答

0

試試這個:

let texture = SKTexture(imageNamed: "myImage.png") 
let ship = SKSpriteNode.init(texture: texture) 

OR

let spaceship = SKSpriteNode(imageNamed: "myImage.png")

在這兩種情況下,使用imageNamed

+0

相同的結果。我還確認該文件在文件檢查器中的名稱爲「cannon.png」 – McArthey

+0

假設您單擊.xcassets(藍色文件夾),在「標識和類型」下應該是類似於「Assets .xcassets「或xcasset的名稱。點擊.xcassets中的資源,然後在「屬性」下應該有圖像的名稱。 – rmp

+0

啊我點擊了Project Navigator目錄結構中的實際文件 – McArthey

0

我最後不得不以使添加爲捆綁資源它可用。我通過選擇頂級解決方案並進入以下區域來完成此任務:構建階段 - >複製捆綁軟件資源

底部是+/-,您可以將各個項目添加到項目中。添加後,您將選擇「複製(根據需要)」,該項目將出現在列表中。然後它就可以用於該項目。在目錄級別添加它並不幸運。

正如在其他搜索中指出的,似乎通常必須在File Inspector中檢查「Target Membership」的框,但即使在此之後,我也沒有可用的複選框。

對於什麼是值得的,上面的組合解決了這個問題。