我正在尝试了解如何按照 Audiokit Docs 上的说明将回调附加到 AudioKit 上的按钮我的代码:
import UIKit
import AudioKit
import AudioKitUI
class ViewController: UIViewController {
let sounds = AKSampler()
@IBOutlet weak var tam: AKButton!
override func viewDidLoad() {
do {
let hiTomFile = try AKAudioFile(readFileName: "hi_tom_D2.wav")
try sounds.loadAudioFiles([hiTomFile])
AudioKit.output = sounds
} catch {
print ("error reading file")
}
do {
try AudioKit.start()
} catch {
AKLog("AudioKit did not start!")
}
// Bad access here!
tam.callback = { button in self.sounds.play() }
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
但是我的访问权限很差。关于我做错了什么的任何提示?
最佳答案
我能让你的按钮正常工作。你的 Storyboard中有一个 UIButton,但我创建了一个通用的 UIView,将类从模块“AudioKitUI”更改为“AKButton”,然后将它连接到你的“tam”声明并点击它运行回调,没有错误。
关于swift - Audiokit 中 AKButton 的回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49468274/