Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“如何准确计时”;点击";以swift/iOS表示的间隔_Ios_Swift_Timer_Intervals - Fatal编程技术网

“如何准确计时”;点击";以swift/iOS表示的间隔

“如何准确计时”;点击";以swift/iOS表示的间隔,ios,swift,timer,intervals,Ios,Swift,Timer,Intervals,如何在Swift/iOS中准确计算“点击”时间间隔?我的在线搜索表明,这并不像我预期的那么琐碎 使用iOS 13和Swift 5,我有一个以秒为单位表示时间间隔的双精度数组。我想产生一系列的声音(咔哒声?),按顺序由每个间隔隔开 我发现了一些关于节拍器等的比较老的线索: “” “” 这表明使用计时器并不准确。这些线程有十年的历史,通常使用重复的时间间隔,而不是从数组中读取 我应该去哪里?计时器?约会DispatchQueue.main.asyncAfter??仅重复前面的问题。答案是一样的,

如何在Swift/iOS中准确计算“点击”时间间隔?我的在线搜索表明,这并不像我预期的那么琐碎

使用iOS 13和Swift 5,我有一个以秒为单位表示时间间隔的双精度数组。我想产生一系列的声音(咔哒声?),按顺序由每个间隔隔开

我发现了一些关于节拍器等的比较老的线索:

  • “”

  • “”

这表明使用计时器并不准确。这些线程有十年的历史,通常使用重复的时间间隔,而不是从数组中读取


我应该去哪里?计时器?约会
DispatchQueue.main.asyncAfter?

仅重复前面的问题。答案是一样的,再问一次也不会增加什么。是你需要知道的一个特别好的总结。即使您有一个精确的计时器(对于短时间间隔,CADisplayLink将是最好的选择),实际上在没有延迟的情况下发出声音也是一件棘手的事情;你需要真正的低层次,这个答案就是这么说的。我认为唯一的“最新”技术是AVAudioEngine(例如构造一个缓冲器并循环它);请参阅上面的第二个链接。抱歉,但感谢您的回答。根据我找到的答案来判断,这似乎超出了我的技能水平,我想检查在此后的许多年中是否有任何重大变化——感觉应该有一个简单、高水平的解决方案来产生适时的声音。显然不是——这是我第一个应用程序令人不满意的结局。将探索AVAudioEngine和/或转向其他项目。