我的问题有两部分,但两部分都是相关的。我找遍了所有地方,但找不到将 R.raw 中的所有文件名放入数组的方法,例如字符串格式的 MP3。
我还想用 Java 动态创建新按钮,而不是使用 XML 文件来布局按钮。
伪代码:
array[] = 将 R.raw 中的所有文件名与文件名一起放入此数组中;
count = 计算数组[]中的行数;
//我希望能够使用该数组执行此操作 for (int i = 0; i < 计数; i++) { 创建新按钮并为其分配声音(onclick); this.button 应该可以放置在我想要的任何地方,而不使用 XML 进行布局 }
预先感谢任何人可以提供的任何帮助!
最佳答案
简短回答:你不能。
长答案: R.raw
等是在构建时生成的,因此在代码中是静态的(您无法从您的应用程序)。基本上,R
只是一个看起来像这样的类:
package com.yourapp;
public class R {
public class raw {
public static final int file_1 = 123456; // where 123456 is the address where that file will be found
public static final int file_2 = 789012;
// ...
}
}
因此,(据我所知)无法获取这些属性的数组。
我建议您使用 assets/
目录而不是 R.raw
。这样,您将能够使用 AssetManager.list()
获取文件列表(以及用于实际处理文件的其他 AssetManager
函数)。
关于java - Android Java - 将 R.raw 中的所有文件名放入数组中,无需手动指定每个文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3960187/