如何使iPhone无限振动?我知道我能做到:

while true {
    AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate))
}

有没有什么方法可以让振动持续一定的时间,或者有类似的效果,这样更干净?还有,有没有办法使振动更剧烈?

最佳答案

我想你应该用定时器。

var timer: Timer?
var numberRepeat = 0
var maxNumberRepeat = 20

func startTimer() {
    //
    timer = Timer.scheduledTimer(timeInterval: 2, target: self, selector: #selector(self.timerHandler), userInfo: nil, repeats: true)
}

func stopTimer() {
    timer?.invalidate()
    timer = nil
}

@objc func timerHandler() {
    if numberRepeat <= maxNumberRepeat {
        numberRepeat += 1
        vibrateDevice()
    } else {
        stopTimer()
    }
}

func vibrateDevice() {
    AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate))
}

关于ios - 在Swift中无限期振动,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52826994/

10-12 22:27