我试图在不从屏幕上抬起手指的情况下结束长按手势。这可能很快吗?
我正在制作一个可以让您录制视频的应用程序。视频录制在我按下按钮时开始,当我将手指从屏幕上移开时结束。那部分工作得很好。如果我的手指仍然按下按钮,我还想要长按手势在 30 秒后结束。我实际上让它停止录制,但问题是当录制停止时长按手势实际上并没有结束。
这是我的一些代码:
func stop() {
let seconds : Int64 = 5
let preferredTimeScale : Int32 = 1
let maxDuration : CMTime = CMTimeMake(seconds, preferredTimeScale)
movieOutput.maxRecordedDuration = maxDuration
if movieOutput.recordedDuration == movieOutput.maxRecordedDuration {
movieOutput.stopRecording()
}
}
func longTap(_ sender: UILongPressGestureRecognizer){
print("Long tap")
stop()
if sender.state == .ended {
print("end end")
movieOutput.stopRecording()
}
else if sender.state == .began {
print("begin")
captureSession.startRunning()
startRecording()
}
}