2015-07-01 5 views
0

В настоящее время я работаю над игрой и хочу добавить к ней кнопку паузы. Один из моих файлов настолько велик, что он стал очень медленным и медленным. Я пытаюсь разбить код на отдельные файлы. Я сделал файл с именем PauseScreen.swift и попытался сделать там кнопку паузы, но, похоже, код никогда не запускался. Это то, что я сделал:Добавление кнопки в новый файл контроллера просмотра Swift не работает

import Foundation 
    import SpriteKit 

    var pauseButton = UIButton.buttonWithType(UIButtonType.System) as! UIButton 

    class Pause: UIViewController { 

     override func viewDidLoad() { 

      let pauseButtonImage = UIImage(named: "Pause") 
      pauseButton.setBackgroundImage(pauseButtonImage, forState: .Normal) 
      pauseButton.frame = CGRectMake(self.view!.frame.width/2 + 190, self.view!.frame.height - 300, 50, 50) 
      pauseButton.addTarget(self, action: "pauseButtonTapped:", forControlEvents: .TouchUpInside) 
      pauseButton.alpha = 1.0 
      self.view?.addSubview(pauseButton) 

     } 


func pauseButtonTapped(sender:UIButton!){} 
} 

Любые идеи?

ответ

0

In viewDidLoad, рама вашего зрения, вероятно, CGRectZero. Попробуйте распечатать рамку и посмотреть, что вы получаете. Если это так, переместите свой код в viewWillAppear.

Кроме того, будьте очень осторожны с жесткой кодировкой рамки вашей кнопки. Это может закончиться с экрана с константами, такими как 300. Я предлагаю использовать автоматический макет, чтобы облегчить эти проблемы.

+0

вещь, код даже не кажется запущенным. Я добавил инструкцию println() в viewWillAppear, и ничего не появилось. Также я использую автоматическую компоновку сейчас, спасибо за подсказку. –

+0

Используете ли вы «Пауза» в своей иерархии контроллера вида? – Travis