リソースIDの指定に変数を使うことはできますでしょうか。
現在、以下のサイトをもとに音を鳴らす練習をしています。
参考サイト:https://kotlin.akira-watson.com/android/soundpool.html
Kotlin
1// one.wav をロードしておく 2 soundOne = soundPool.load(this, R.raw.one, 1)
音を鳴らすことはできました。
このR.raw.oneというリソースIDの代わりに変数を使うことはできますか?
Kotlin
1 val instead = "one" 2 soundOne = soundPool.load(this, R.raw.$instead, 1)
Expecting an elementというエラーになりました。
変数を使うことができれば、配列からたくさんの音を入れ替えようと思っています。
使えない場合、1つ2つの音だけではなく、10、100となってきた時の音のあつかいについて指南いただけますと幸いです。
どうぞよろしくお願いいたします。
Android Studio 4.2.1
*回答を参考に更新
Kotlin
1val insteadRes = "on" 2val instead = resources.getIdentifier("$insteadRes"+"e", "raw", packageName) 3soundOne = soundPool.load(this, instead, 1)
これで変数と文字列の組み合わせをリソースIDにできると判断。
変数に数字を利用して、たくさんの音を入れ替えることができるようになりました。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/20 09:51