我的Res文件夹中有一个名为“raw”的文件夹,其中包含一些短音轨,屏幕显示几个按钮。
我希望能够像这样启动MediaPlayer ......
String[] track = {"track1", "track2", "track3", etc...}
mPlayer = MediaPlayer.create(this, R.raw.track[x]);
问题在于R.raw.track[x]
。
有没有办法以我正在尝试的方式做到这一点,还是我需要一种全新的方法?
提前感谢您提出的任何建议。
答案 0 :(得分:2)
我将在此假设您的x
是一个索引,可能来自track
的用户选择。
您有两个主要选择:
拥有相应的int[] {R.raw.track1, R.raw.track2, ...}
并按此方式查找R.raw
值
Use getResources().getIdentifier()
在运行时查找标识符
第二个选项更容易,但使用反射,所以不是超快。在你的情况下,这应该不重要,因为我怀疑你是在紧密循环中查找这些ID。