質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

1回答

169閲覧

繰り返し記述されるコードを簡略化して整理したいです

Mineo_user

総合スコア8

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2017/11/11 11:57

mp3データを複数再生させたいのですが、100個くらいのmp3を再生するために同じ記述を繰り返さず、array等を使って下記のコードを繰り返して書かずに簡略化するにはどうしたら良いでしょうか。
それぞれ「00」「01」のところを書き換えるだけのコードになります。

swift初心者なので具体的なコードで教えて頂けますと幸いです。
Xcode8です。
よろしくお願いします。

let musicData00 = Bundle.main.path(forResource: "00", ofType: "mp3”) do{ try sound00 = AVAudioPlayer(contentsOf: URL (fileURLWithPath: musicData00!)) sound00.prepareToPlay() sound00.volume = 7 } catch { print(error) } let musicData01 = Bundle.main.path(forResource: "01", ofType: "mp3”) do{ try sound01 = AVAudioPlayer(contentsOf: URL (fileURLWithPath: musicData01!)) sound01.prepareToPlay() sound01.volume = 7 } catch { print(error) } //上記のコードの「musicData00」「00」「sound00」の数字を変更して複数繰り返したいです

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

こんな感じになりますかね。テストしてません。
swift初心者だとかは関係ないですね。

swift

1for i in 0 ..< 100 { 2 3 let file = String(format: "%02d", i) 4 let musicData = Bundle.main.path(forResource: file, ofType: "mp3") 5 6 do{ 7 try sound = AVAudioPlayer(contentsOf: URL (fileURLWithPath: musicData!)) 8 sound.prepareToPlay() 9 sound.volume = 7 10 } 11 catch { 12 print(error) 13 } 14}

投稿2017/11/11 13:18

fromageblanc

総合スコア2724

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Mineo_user

2017/11/12 02:30

ありがとうございます。 コード内コメントにも書きましたが、変更したいのは、mp3のファイル名だけでなく、下記文字列の数字部分になります。 「musicData00」「00」「sound00」
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問