【Swift】自動でボタンのクッリクアクションを起こしたい
Q&A
Closed
解決したいこと
Xcodeで音声再生アプリをつくっています。
音声を自動で停止させる部分がわかりません。
解決方法を教えて下さい。
開発環境
Xcode Version 14.2
Interface Storyboard
macOS monterey 13.0.1
発生している問題・エラー
調査した結果、labelのonClickイベントを起こさせるコードは存在していたので変数名の部分だけ対象のボタンに変えました
下に記載したエラーの状況です。
Value of type 'UIButton' has no member 'onClick'
該当するソースコード
import UIKit
import AVFoundation
class ViewController: UIViewController {
@IBOutlet weak var btnCount: UIButton!
@IBOutlet weak var btnExplosion: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
btnExplosion.isEnabled = false
}
var player: AVAudioPlayer?
@IBAction func btnCount(_ sender: Any) {
if let soundURL = Bundle.main.url(forResource: "timer", withExtension: "mp3") {
do {
player = try AVAudioPlayer(contentsOf: soundURL)
player?.play()
} catch {
print("error")
}
}
btnCount.isEnabled = false
btnExplosion.isEnabled = true
DispatchQueue.main.asyncAfter(deadline: .now() + 5.0) {
self.btnExplosion.isUserInteractionEnabled = true
self.btnExplosion.onClick = {
// ここではボタンを押した際の処理を書かずに押すことだけを行いたい
}
}
}
@IBAction func btnExplosion(_ sender: Any) {
if let soundURL = Bundle.main.url(forResource: "explosion", withExtension: "mp3") {
do {
player = try AVAudioPlayer(contentsOf: soundURL)
player?.play()
} catch {
print("error")
}
}
btnCount.isEnabled = true
btnExplosion.isEnabled = false
}
}
自分で試したこと
前述のように、labelのonClickイベントを起こさせるコードは存在していたので変数名の部分だけ対象のボタンに変えました。参照したサイトは以下です。
0