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

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

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

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

1回答

260閲覧

kotlinのsoundPoolで

inuo

総合スコア12

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2019/05/03 19:02

編集2019/05/03 19:39

前提・実現したいこと

自分の弟用に算数の足し算アプリを作っています。

問題をランダムに作って表示ごとにrawの音ファイルを再生して問題を読み上げたい
例)1+1=を表示して 「いち」 「たす」 「いち」 「は」
2+2=を表示して 「に」 「たす」 「に」 「は」

回答の読み上げはクリックごとに読み上げできているのですが問題の読み上げで4つの音を出すところではまっています。
makeExam()でmakeSound()を呼ぶと一つの音は出るのですが複数はだめでした。
うまくできる方法なないでしょうか。

kotlin

1  //問題を作る 2 fun makeExam() { 3 4 answer.text = "" 5 val numbers = listOf<Int>(0, 1, 2, 3, 4, 5, 6, 7, 8, 9) 6 val random = Random() 7     //一番目の数字を表示 8 var firstRandomNumber = random.nextInt(9) 9 firstValue.text = numbers[numberRandom].toString() 10     //二番目の数字を表示 11 secondRandomNumber = random.nextInt(9) 12 secondValue.text = numbers[numberRandom].toString() 13 14 //作った式を読み上げたい 15 makeSound(firstRandomNumber.toString()) 16 makeSound("+") 17 makeSound(secondRandomNumber.toString()) 18 makeSound("=") 19 20 } 21 22 //mp3を再生する 23 fun makeSound(selectedNumber:String) { 24 var soundListBtn = listOf(intSoundId_btn0 25 ,intSoundId_btn1,intSoundId_btn2,intSoundId_btn3,intSoundId_btn4, 26 intSoundId_btn5,intSoundId_btn6,intSoundId_btn7,intSoundId_btn8,intSoundId_btn9) 27 28 if(selectedNumber != "C" && selectedNumber != "-" && selectedNumber != "+"){ 29 soundPool.play( soundListBtn[ selectedNumber.toInt() ], 1.0f, 1.0f, 0, 0, 1.0f) 30 31 }else if (txt == "-"){ 32 soundPool.play( intSoundId_btnMinus, 1.0f, 1.0f, 0, 0, 1.0f) 33 34 }else if(txt == "+"){ 35 soundPool.play(intSoundId_btnPlus, 1.0f, 1.0f, 0, 0, 1.0f) 36 37 }else if(txt=="="){ 38 soundPool.play(intSoundId_btnEquals, 1.0f, 1.0f, 0, 0, 1.0f) 39 40 } 41 } 42

一応、メソッドからではなく問題を作った後にViewの値から読み上げようとも思ったのですが。それも音が一つしか再生されません。

soundPool.play( intSoundId_btn1, 1.0f, 1.0f, 0, 0, 1.0f) soundPool.play( intSoundId_btnPlus, 1.0f, 1.0f, 0, 0, 1.0f) soundPool.play( intSoundId_btn3, 1.0f, 1.0f, 0, 0, 1.0f) soundPool.play( intSoundId_btnEquals, 1.0f, 1.0f, 0, 0, 1.0f)

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

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

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

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

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

guest

回答1

0

↓こういう状態ではないでしょうか.

AndroidのSoundPoolにて、続けて別ファイルを再生したい

投稿2019/05/04 02:03

jimbe

総合スコア12632

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

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

inuo

2019/05/04 04:13

ありがとうございます。重なって再生されているんですね。ずらすようにしてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問