2017-01-13 3 views
1

私の生のリソースからランダムなサウンドを再生するアプリケーションを作成したいと思います。これはサウンドの名前を生成しますが、サウンドを開始するために、文字列変数の値であるその名前を使用するにはどうすればいいですか?私は再生したいサウンドの名前として文字列変数を使用します。Java(Android)

String[] imena_tonova = {"c3", "c-3", "d3", "d-3", "e3", "f3", "f-3", "g3", "g-3", "a3", "a-3", "b3", "c4", "c-4", "d4", "d-4", "e4", "f4", "f-4", "g4", "g-4", "a4", "a-4", "b4"}; 
      int range2 = 11 - 0 + 1; 
      int randomNum2 = rn.nextInt(range) + 0; 
      String pt = imena_tonova[randomNum2]; 

final MediaPlayer Play = MediaPlayer.create(this, R.raw.); 
      Play.start(); 

.create()関数で2番目の引数として渡す必要があるのは何ですか?

答えて

0

使用int型で

int resourceId = getResources().getIdentifier(pt, "raw", getPackageName()); 
0

ストア識別子[]配列のようなものを。

int[] imena_tonova = { R.raw.c3; } 

また、リソースに関連付けられた名前が必要な場合は、マップを使用できます。それからもちろん、アイテムをランダムに選択する方法を考えなければなりません。

Map<String, Integer> imena_tonova = new HashMap<>(); 
// Add items to your map 
imena_tonova.put("C3", R.raw.c3); 
関連する問題