2017-02-14 13 views
0

Просто начинайте с Swift в XCode, и я проверил ряд учебников. К сожалению, они не охватывают некоторые существенные основы. Я уже импортировал каталог активов (который содержит подкаталоги) и выбрал «Копировать (при необходимости)». Папка синяя и отображается в разделе «Фазы сборки» -> «Ресурсы копирования». Я использовал простые строки ниже, но изображение по-прежнему отображается как красный «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) 

ИЛИ

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

В любом случае, используйте imageNamed

+0

Те же результаты. Я также подтвердил, что этот файл имеет имя «cannon.png» в инспекторе файлов в разделе «Идентификация и тип» – McArthey

+0

Предполагая, что вы нажимаете на .xcassets (синяя папка), в разделе «Идентификация и тип» должно быть что-то вроде «Активы» .xcassets "или имя вашего xcasset. При нажатии на актив в .xcassets в разделе «Атрибуты» должно быть имя изображения. – rmp

+0

Ах, я нажал на фактический файл в структуре каталогов в Project Navigator – McArthey

0

Я закончил тем, что добавить это как набор ресурсов для того, чтобы сделать он доступен. Я сделал это, выбрав решение верхнего уровня и перешел к следующей области: Сборка фаз-> Копирование ресурсов Bundle

Внизу +/-, и вы можете добавить отдельные элементы в проект. После добавления вы выберете «Копировать (при необходимости)», и элемент появится в списке. Затем он становится доступным для проекта. К сожалению, добавление его на уровне каталогов не работает.

Как указано в других поисковых запросах, обычно необходимо установить флажок «Целевое членство» в Инспекторе файлов, но даже после этого у меня нет установленного флажка.

Для чего это стоит, комбинация из вышеперечисленного решает проблему.