gpt4 book ai didi

android - 为原始目录中的每个文件生成int常量

转载 作者:行者123 更新时间:2023-12-03 01:56:59 25 4
gpt4 key购买 nike

我的问题是,要播放通知的声音,您需要一个易于获取的URI。虽然我有153个文件正在加载,所以我使用了增强的for循环来加载每个文件,而不是单独进行。这是我的方法:

SoundPool pool = getSoundPool();
File raw = context.getDir("raw", Context.MODE_PRIVATE);
for(File file : raw.listFiles()){
pool.load(file.getPath(), 0);
}

顺便说一下,我尚未对此进行测试。如果不对,请纠正我。

回到主题,对于每个.playSound调用,URI需要R.raw.name东西。将每个声音存储为文件后,我没有每个声音的int常数。

我的问题:是否有一种简单的方法可以为目录中的随机文件生成int常量,然后可以将其用于生成URI?我不想遍历所有153种声音并为每个声音定义常数。

最佳答案

将原始文件夹中所有文件的名称保留为通用后缀整数。假设您选择的名字是rawname
您的文件名就是rawname1,rawname2,rawname2 ...

然后编写一个循环并使用循环索引,并使用此名称按名称获取资源:

for(int i=1; i<=153; i++) {
int drawableResourceId = this.getResources().getIdentifier("rawname" + Integer.toString(i), "raw", this.getPackageName());
}

然后,您可以在需要放置 drawableResourceId的地方使用 R.raw.name

关于android - 为原始目录中的每个文件生成int常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34558927/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com