我目前正在开发一个简单的Android应用程序,现在我正试图让它加载并播放声音。我面临的问题是我希望它使用的声音基于一个字符串(与声音文件同名)。这样做的原因是代码的简单性和添加它。
现在不幸的是我不能只是用一个字符串来代替引用实际的声音,但是我有一些方法可以将字符串与整个原始文件夹进行比较以找到匹配的声音,或者其他一些替代方法手动的每一个声音?
感谢您的时间。
答案 0 :(得分:1)
This page说明了如何使用getresources().getidentifier()
。
答案 1 :(得分:0)
你为什么需要这样做?如果文件已经在原始文件中,并且您希望简单地使用强文件作为文件的名称,那么执行此操作的任何数量的编码可能需要更长时间,然后只需引用该文件,因为引用将只是:< / p>
R.raw.file_name
而不是:
file_name中
这不是更多的打字,特别是如果它是一个简单的应用程序。
答案 2 :(得分:0)
尝试使用Reflection包来检查文件是否存在。
摘录
try {
Class res = R.raw.class;
Field field = res.getField(<yourmediafile>);
//If the code reach here, that means media file exists.
} catch (Exception e) {
//No media file with that name
}