Ios 如何创建一个按钮,但使其具有两个功能?
我为秒表创建了两个独立的按钮,开始和停止。我如何将其组合成一个按钮。单击开始,计时器启动,然后函数应更改,以便在单击时停止,然后再次单击时重置Ios 如何创建一个按钮,但使其具有两个功能?,ios,xcode,swift,Ios,Xcode,Swift,我为秒表创建了两个独立的按钮,开始和停止。我如何将其组合成一个按钮。单击开始,计时器启动,然后函数应更改,以便在单击时停止,然后再次单击时重置 @IBAction func start(sender: AnyObject) { if !timer.valid{ let aSelector : Selector = "updateTime" timer = NSTimer.scheduledTimerWithTimeInterval(0.01, target: s
@IBAction func start(sender: AnyObject) {
if !timer.valid{
let aSelector : Selector = "updateTime"
timer = NSTimer.scheduledTimerWithTimeInterval(0.01, target: self, selector: aSelector, userInfo: nil, repeats: true)
startTime = NSDate.timeIntervalSinceReferenceDate()
}
}
@IBAction func stop(sender: AnyObject) {
timer.invalidate()
}
你可以这样做
@IBAction func startstop(sender: AnyObject) {
if !timer.valid{
let aSelector : Selector = "updateTime"
timer = NSTimer.scheduledTimerWithTimeInterval(0.01, target: self, selector: aSelector, userInfo: nil, repeats: true)
startTime = NSDate.timeIntervalSinceReferenceDate()
}
else{
timer.invalidate()
}
}
否则,您可以将一个标志设置为布尔值
您可以根据条件按真或假进行检查。使用按钮选择和未选择状态 因为您可以为不同状态的按钮指定不同的图像
[button setImage:[UIImage imageNamed:@"touch_selected.png"] forState:UIControlStateSelected];
[button setImage:[UIImage imageNamed:@"touch_selected.png"] forState:UIControlStateHighlighted];
使用之后
@IBAction func buttonAction(sender: AnyObject) {
// use you if statement to select the condition for start and stop
if ([_button isSelected]){
// start function
} else {
//stop function
}
}
很抱歉,代码是Obj c和swift的混合体使用bool变量启动和停止。