回答編集履歴
2
誤字修正
answer
CHANGED
@@ -30,4 +30,4 @@
|
|
30
30
|
---
|
31
31
|
|
32
32
|
**その他**
|
33
|
-
「start」メソッド内で"play"を2回
|
33
|
+
「start」メソッド内で"play"を2回呼んでいますが、メソッド最後の方の"play"だけで大丈夫かと思います。
|
1
追記
answer
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
@IBAction func start(_ sender: Any) {
|
7
7
|
do {
|
8
8
|
musicPlayer = try AVAudioPlayer(contentsOf: musicPath)
|
9
|
-
musicPlayer.enableRate = true // ここを追加してください
|
9
|
+
musicPlayer.enableRate = true // ※ここを追加してください※
|
10
10
|
musicPlayer.play()
|
11
11
|
|
12
12
|
} catch {
|
@@ -21,8 +21,13 @@
|
|
21
21
|
|
22
22
|
---
|
23
23
|
|
24
|
-
**
|
24
|
+
**速度が変わらなかった原因について**
|
25
|
-
複数箇所で
|
25
|
+
複数箇所でAVAudioPlayerクラスのインスタンスを生成しているのが原因と思います。(全部で3回生成している)
|
26
26
|
「viewDidLoad」メソッド内で "musicPlayer.enableRate = true" としているのに、
|
27
|
-
「start」メソッド内でも
|
27
|
+
「start」メソッド内でもAVAudioPlayerクラスのインスタンスを生成し直してしまっている。
|
28
|
-
そのため、速度変更を許可する設定がクリアされてしまっている。
|
28
|
+
そのため、速度変更を許可する設定がクリアされてしまっている。
|
29
|
+
|
30
|
+
---
|
31
|
+
|
32
|
+
**その他**
|
33
|
+
「start」メソッド内で"play"を2回読んでいますが、メソッド最後の方の"play"だけで大丈夫かと思います。
|