首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用字符串变量作为我想要播放的声音的名称,Java (Android)

使用字符串变量作为我想要播放的声音的名称,Java (Android)
EN

Stack Overflow用户
提问于 2017-01-13 20:25:36
回答 2查看 111关注 0票数 1

我想创建一个应用程序,播放随机声音从我的原始资源。它生成一个声音的名称,但是我如何使用这个名称,它是我的字符串变量的值来启动声音。

代码语言:javascript
复制
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()函数中传递什么作为第二个参数?

EN

回答 2

Stack Overflow用户

发布于 2017-01-13 20:28:29

使用像这样的东西

代码语言:javascript
复制
int resourceId = getResources().getIdentifier(pt, "raw", getPackageName());
票数 0
EN

Stack Overflow用户

发布于 2017-01-13 20:33:47

将标识符存储在int[]数组中。

代码语言:javascript
复制
int[] imena_tonova = { R.raw.c3; }

或者,如果您需要与资源相关联的名称,可以使用Map。当然,你必须想出随机选择项目的方法。

代码语言:javascript
复制
Map<String, Integer> imena_tonova = new HashMap<>();
// Add items to your map
imena_tonova.put("C3", R.raw.c3);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41634632

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档