Я пытаюсь сделать сцену регистрации внутри игры на iOS. что я до сих пор это:показать клавиатуру на SKNode touch
Поскольку мне не удалось поставить UITextField внутри сцены, что у меня есть, я попытался поставить SKNodes, активирующие клавиатуру на ощупь. Было бы очень полезно, если бы кто-то помог мне поместить UITextFields внутри моей игровой сцены (потому что было бы легче получить сцену регистрации и с меньшим количеством кода, а также с поддержкой для этого).
Мой код до сих пор это:
let nameForm:SKSpriteNode = SKSpriteNode(imageNamed: "RegistrationScene_TEST_textviews")
let usernameForm:SKSpriteNode = SKSpriteNode(imageNamed: "RegistrationScene_TEST_textviews")
let passwordForm:SKSpriteNode = SKSpriteNode(imageNamed: "RegistrationScene_TEST_textviews")
let passwordForm2:SKSpriteNode = SKSpriteNode(imageNamed: "RegistrationScene_TEST_textviews")
И когда кто-то касание любой из этих узлов он должен управляться с помощью метода, как это:
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
let touch = touches.anyObject()! as UITouch
let location = touch.locationInView(self.view)
for touch:AnyObject in touches{
if CGRectContainsPoint(nameForm.frame, touch.locationInNode(self)){
//Function to display the keyboard
//Function that saves the keystroke
//Function to display a nameLabel with the saved keystroke
}
//same for the other Forms
//methods for the buttons (DONE)
}
}
Если есть другой способ получить текстовый ввод в игру (чтобы сохранить статистику игры или что-то полезное для игрового процесса), пожалуйста, дайте мне знать, любая помощь будет очень оценена
EDIT:
Согласно Кристиану Вёрц, я сделал следующее, и это решило мою проблему.
let txtField:UITextField!
txtField = UITextField(frame: CGRect(x: 0, y: 0, width: 200, height: 30));
self.view?.addSubview(txtField!)
отредактируйте свой код в соответствии с кодом, который я написал (и работал для меня), чтобы кто-нибудь еще мог понять, как это сделать, если у них есть одна и та же проблема :) –