0
我是這個領域的新手,所以也許很簡單的問題,我不知道,關於迅速。我知道如何讓2個按鈕用於秒錶,啓動和停止。但我想要有相同的按鈕來啓動和停止秒錶,然後文本從停止變爲開始,這是可能的,以及如何?一個按鈕,2個動作和名稱更改,Swift?
我是這個領域的新手,所以也許很簡單的問題,我不知道,關於迅速。我知道如何讓2個按鈕用於秒錶,啓動和停止。但我想要有相同的按鈕來啓動和停止秒錶,然後文本從停止變爲開始,這是可能的,以及如何?一個按鈕,2個動作和名稱更改,Swift?
我能夠創建一個簡單的iOS項目,符合您的要求。這是一步一步的。
在項目的Storyboard
中創建一個UIViewController
場景並將其命名爲「ViewController」。在場景中添加一個UIButton
以及一些自動佈局約束。在您的Project Navigator中,在其中創建與下面的代碼UIViewController
子文件:
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var myButton: UIButton!
var timer: NSTimer?
var myInt = 0
var launchBool: Bool = false {
didSet {
if launchBool == true {
myButton.setTitle("Stop", forState: .Normal)
timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: "fireStopWatch", userInfo: nil, repeats: true)
} else {
myButton.setTitle("Start", forState: .Normal)
timer?.invalidate()
timer = nil
myInt = 0
}
}
}
@IBAction func buttonAction(sender: AnyObject) {
launchBool = !launchBool //true to false, false to true...
}
func fireStopWatch() {
myInt += 1
println(myInt)
}
override func viewDidLoad() {
super.viewDidLoad()
myButton.setTitle("Start", forState: .Normal)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
鏈接你的@IBAction
和@IBOutlet
到UIButton
在你的ViewController的場景。啓動您的項目。
每次點擊您的UIButton
時,它會在「開始」和「停止」之間切換標題。每次點擊「開始」時,它會在您的Xcode控制檯中顯示增加值myInt
。每次點擊「停止」時,它會停止您的NSTimer
並將myInt
重置爲0.
我不確定這個問題是否真的與Swift有關。這是非常基本的可可/基金會的東西。你有開發iOS/OSX的經驗嗎? – 2014-09-10 16:32:05
不,我剛剛在3個星期前開始在線搜索,但運氣不錯,但也許我甚至不知道足以正確搜索! – Jesper 2014-09-10 16:56:34
我會建議拿起一本書或尋找關於使用Cocoa for iOS或OSX編程的介紹性教程。有太多的理由要回答你的問題,因爲它適合於在計算器上的答案。 – 2014-09-10 17:00:35