android - 一键随机声音

标签 android

我有一个简单的应用程序,只有一个按钮。当我按下它时,它会播放一种声音(btn001)。我想要它做的是播放原始文件夹中的随机声音。我有 47 个声音文件,名为 btn001 到 btn047。有没有简单的方法来修改我的代码以使其工作。 我知道网上有很多相同的问题。我已经尝试了所有我发现的。我很沮丧,但还没有发挥作用。 这是我的代码:

 import android.media.MediaPlayer;
    import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;
    import android.view.View;
    import android.widget.Button;

    public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button pushMe = (Button) findViewById(R.id.button1);
        final MediaPlayer cheer = MediaPlayer.create(MainActivity.this, R.raw.btn001);

        pushMe.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                cheer.start();
            ;
            };}

        );
            }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    }

最佳答案

创建一个列表,在其中添加所有声音,然后播放该列表中的随机声音。 您可以通过 (int)(Math.random()*47)

获得随机索引

关于android - 一键随机声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19210174/

相关文章:

Android float/double 资源类型

android - 如何停止父 Activity 的 Activity ?

android - 升级到 AppCompat v21 后工具栏和状态栏上的绘图错误

javascript - 如何从函数中打开组件 react native

java - 在android ListView中找出被点击元素的父级

android - 子项目模块无法解析它自己的依赖

c# - 400 错误请求仅在 Android 应用程序中无效的主机名

java - ExoPlayer - 播放 SD 卡中的本地 mp4 文件

android - RequestWindowFeature(Window.FEATURE.NO_TITLE) 在 C# 中的等效代码是什么

android-3.0-honeycomb - 使android 2.2版本的应用兼容android 3.0