【发布时间】:2015-08-04 22:11:01
【问题描述】:
首先,我不得不说,这个平台上有这么多的信息,因为每个人,谁在帮助。非常感谢。
目前,我已经到了一个点,我无法靠自己走得更远。
这是我的问题:
我有一个嵌入在导航控制器中的 MainScreen ViewController。 在这个 MainScreen 中,我可以用 Segue 显示一个创建游戏场景的 GameViewController。 在这个游戏场景中,我有一个按钮,当点击它时,会显示一个弹出窗口并暂停游戏场景。
此弹出窗口包含两个按钮:
- 一个用于恢复游戏并使弹出窗口消失的按钮。
- 应该结束游戏场景并返回主屏幕的按钮。
这是我的问题。 我无法为结束按钮创建功能。我用segues尝试了不同的星座,但结果并不好。
我认为这里的困难在于,这个按钮在一个单独的类中。据我了解,这里的层次结构是:
GameViewController -> GameScene -> Popup -> EndButton.
您有什么想法可以解决这个问题吗?是否有其他方法可以在不使用 segues 的情况下解决这种转换?
非常感谢您提前提供的帮助!
亲切的问候, 菲尔
更新:
在我的游戏场景中,弹出窗口基本上如下所示:
class GameScene: SKScene, SKPhysicsContactDelegate {
// ....
var pauseButton : UIButton! = UIButton()
var pausePopup : PausePopup! // my Popup class with the End button
// ....
override func didMoveToView(view: SKView) {
//configuring the button
pause_button.addTarget(self, action: "pauseButtonPressed", forControlEvents: UIControlEvents.TouchUpInside)
self.view?.addSubview(pause_button)
}
func pauseButtonPressed() {
self.pausePopup = PausePopup(nibName: "uxPausePopup", bundle: nil)
self.scene!.view!.paused = true
self.pausePopup.showInView(self.viewPlaceHolder, animated: true, scene: self)
}
// this is where my popup appears.
在我的 Popup 类中,我有一个 EndButton 操作,它位于 Popup 上,我想从它返回到主屏幕:
@IBAction func showMainScreen(sender: AnyObject) {
// this does not work ...
self.performSegueWithIdentifier("showMainScreen", sender: nil)
}
【问题讨论】:
-
嗨菲尔。您能否提供有关您显示的“弹出窗口”的更多信息,例如您用于显示它的代码?
-
嗨。我刚刚更新了一些信息。如果您需要更多信息,请告诉我。
标签: swift button uiviewcontroller segue