我正在尝试学习SpriteKit并使用一些简单的示例应用程序。
目前我正在努力实现以下目标:
为达到第一项要求,我尝试了以下步骤:
第1步:在GameViewController.swift中,添加了对视图的引用。
var keyView: KeyboardDummyView?
第2步:在viewDidLoad()中,创建了视图,将其分配给ivar,并将其添加到控制器的视图中。同时在GameScene中为反向引用ivar分配了“self”。
override func viewDidLoad() {
super.viewDidLoad()
if let scene = GameScene.unarchiveFromFile("GameScene") as? GameScene {
// So scene can forward touch event back here.
scene.gvc = self
// Other config
keyView = KeyboardDummyView(frame: self.view.frame)
self.view.addSubview(keyView!)
}
}
第3步:添加了处理点击/触摸的功能。
func handleTap() {
// Show the keyboard
keyView!.becomeFirstResponder()
}
第4步:在GameScene.swift中添加了对控制器的引用。
var gvc: GameViewController?
第5步:在touchesBegan处理了点按。
gvc!.handleTap()
但由于某些原因,在点击屏幕时没有显示键盘:(
以下是代码库:KeyboardOverSKScene
请告知我做错了什么?
注意: 我在Xcode 6.0.1中尝试此操作