0
私は、スピーディーな学習の一環としてstopWatchアプリケーションを作成しようとしています。 Javaから来て私は変数を初期化する方法を考え出すのに苦労しています。 ViewControllerの関連コード:viewDidLoad()で変数を初期化する方法Swift2
var timerRunning = false
var timer: NSTimer = NSTimer() //first initialization I want to remove this initialization and leave it as nil
override func viewDidLoad() {
super.viewDidLoad()
// second initialization
timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: #selector(ViewController.timeChanged), userInfo: nil, repeats: true)
}
func timeChanged(){
print("1 second")
}
私が直面しています問題は、私は冗長であり、nilに設定されていないことができると思いタイマー変数の初期化、二重です。私の目標は、いくつかの関数でtimer変数を使用し、button pressedイベントでそれを初期化することです。上記のアプローチは動作しますが、私はいくつかのよりクリーンな/正しい実装を探しています。 ありがとう
'var timer:NSTimer = NSTimer()'を 'var timer:NSTimer! 'に変更することができます。この方法は、タイマーが常に値を持つべきであることを意味します。後でnilに設定する – Tj3n