2017-02-14 17 views
0

XCodeでSwiftを使い始める前に、いくつかのチュートリアルを実行しました。残念ながら、彼らはいくつかの基本的な基本をカバーしていません。既にサブディレクトリを含むアセットのディレクトリをインポートし、「コピーする(必要に応じて)」を選択しました。フォルダは青色で、[ビルド段階] - > [バンドルリソースのコピー]に表示されます。私は以下の単純な線を使用しましたが、画像はシミュレータの赤い "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に位置していますか?

EDIT

私は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(青色のフォルダ) .xcassets "またはxcassetの名前を入力します。 .xcassetsのアセットをクリックしてから「属性」の下に画像の名前を付ける必要があります。 – rmp

+0

ああ、Project Navigatorのディレクトリ構造で実際のファイルをクリックしていました。 – McArthey

0

を使用それは利用可能です。ビルド段階 - >コピーバンドルリソース

最下部に+/-を付け、プロジェクトに個々の項目を追加することができます。追加後、「コピーする(必要に応じて)」を選択すると、そのアイテムがリストに表示されます。その後、プロジェクトで使用できるようになります。残念なことに、ディレクトリレベルで追加することはできませんでした。

他の検索でも指摘されているように、ファイルインスペクタの[対象メンバーシップ]チェックボックスをオンにする必要があるようですが、この後もチェックボックスは使用できません。

上記の組み合わせが問題を解決すると思われるものについては、

関連する問題