2015-07-25 4 views
0

Я попытался сделать игру на бета-версии Xcode 7, я почти закончил ее, но проблема в том, что я не знаю, как поставить кнопки с кодом Swift, я попытался поместить их на Main.storyboard, но они не устраивают очень Что ж. некоторые из них становятся больше, а некоторые меньше и т. д. Поэтому я хочу знать, как поместить эти кнопки с кодом, как на рисунке ниже. Синяя кнопка первый слева является Leaderboard, то доля Facebook, доля твиттер, а кнопка другой по умолчанию (возможно, это будет удалить объявления)Как установить кнопки на SpriteKit с быстрым кодом?

enter image description here

ответ

0

Ваши кнопки должны быть .png файлы в images.xcassets (вы можете добавить новое изображение, нажав кнопку + внизу). Он автоматически выберет правильный размер в зависимости от устройства/симулятора. Затем вы создаете переменную для хранения узла, как это:

let myNode = SKSpriteNode(imageNamed: "yourImage") 

Затем вы можете расположить узел несколько способов, но я покажу вам, что я думаю, что будет работать лучше для вас. Использование myNode.position = CGPointMake(CGRectGetMaxX(self.frame) *0.40, CGRectGetMaxY(self.frame) * 0.25) Это позволит получить максимальную х и у значения на экране, умножая их на .4 и .25 соответственно, а затем вы можете добавить узел сцены будет эту строку:

self.addChild(myNode) 

О, и вы можете умножьте значения на любой десятичный разряд, который вы хотите получить узлами в точном месте. Если вы хотите, чтобы они были бок о бок, вы можете сделать что-то вроде этого: myNode.position = CGPointMake(otherNode.position.x + myNode.frame.size.width/2, CGRectGetMaxY(self.frame) * 0.25)

+0

этот код 'myNode.position = CGPointMake (CGRectGetMaxX (self.frame) * 0.40, CGRectGetMaxY (self.frame) * 0.25)' и это 'myNode.position = CGPointMake (otherNode.position.x + myNode.frame.size.width/2, CGRectGetMaxY (self.frame) * 0.25)' не будет работать найденной ошибкой и указанной ожидаемой декларацией, я объявил myNode, но выиграл Не работает, странно! – Emm

+0

«Ожидаемое объявление» обычно появляется, когда вы добавляете код вне функции, и код должен быть в этой функции. Добавьте эти строки в didMoveToView @EminEmini – TheCodeComposer

+0

Я сделал это, но обнаружил ошибку в том же коде. «'*' Не является префиксом унарного оператора» – Emm

Смежные вопросы