所以我在屏幕上有一个按钮,通过故事板连接推动赛格威。我按下按钮,它会转到下一个视图控制器。
如果我想以1-2秒的速度放慢过渡速度,我该怎样做呢?
答案 0 :(得分:2)
您可以在第一个视图控制器中创建一个方法,该方法在延迟后使用performSegueWithIdentifier方法。
然后将视图控制器上的按钮连接到该方法。
代码示例:
<强>故事板强>
这里我有一个初始视图控制器,带有第二个视图控制器的手动segue。
我已将Fire Method按钮连接到初始视图控制器上的IBAction,使用以下代码:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
// This method is connected to the Fire Method button
@IBAction func fireMethodBttnTouched(sender: AnyObject) {
let delay = 1 * Double(NSEC_PER_SEC)
let time = dispatch_time(DISPATCH_TIME_NOW, Int64(delay))
dispatch_after(time, dispatch_get_main_queue()) { () -> Void in
self.performSegueWithIdentifier("showSecondViewController", sender: self)
}
}
}
您可以根据需要调整延迟常数。