【问题标题】:Play random sound on button click单击按钮时播放随机声音
【发布时间】:2015-02-19 13:59:09
【问题描述】:

我希望我的应用程序在用户单击按钮时播放随机声音。所以我不想要android自然的声音,我想每次用户点击一个按钮时播放我自己的声音。有谁知道这个问题的解决方法。

【问题讨论】:

    标签: android button android-activity soundpool


    【解决方案1】:

    播放声音:

    Play sound on button click android

    对于随机声音,您只需将所有声音添加到列表中。 在 onClickListener 中,只需从您的列表中获取随机声音。 像这样的:

    List<Integer> soundList = new ArrayList<Integer>();
    soundList.add(R.raw.sound1);
    soundList.add(R.raw.sound2);
    soundList.add(R.raw.sound3);
    soundList.add(R.raw.sound4);
    
    myButton.setOnClickListener(new OnClickListener {
       @Override
        public void onClick(View v) {
            playRandomSound();
        }
    });
    
    
    private void playRandomSound() {
        int randomInt = (new Random().nextInt(soundList.size()));
        int sound = soundList.get(randomInt);
        MediaPlayer mp = MediaPlayer.create(this, sound);
        mp.start();
    }
    

    不保证这行得通!这只是一个例子,你怎么能做到!

    【讨论】:

    • 有没有办法禁用安卓点击的自然声音
    • 有没有办法让它随机播放所有歌曲而不停止主要活动?
    • 什么意思?默认循环播放所有歌曲?
    【解决方案2】:

    实现这一目标的一种方法是:

    1. 将您的声音嵌入为 MP3 编码文件
    2. 在 Android 应用中附加点击事件处理程序

      myButtonTwo.setOnClickListener(new OnClickListener() {

          @Override
          public void onClick(View v) {
      
             //code that runs when button is clicked
      
          }
      });
      
    3. 在事件处理程序中从应用程序访问和播放嵌入的 MP3 文件

      MediaPlayer mPlayer = MediaPlayer.create(FakeCallScreen.this, R.raw.mysoundfile); mPlayer.start();

    How do I play an mp3 in the res/raw folder of my android app?

    一个解释完整过程的教程

    http://www.accelerated-ideas.com/news/android-app-development--how-to-add-and-play-music-and-audio-files.aspx

    编辑:

    禁用原生安卓点击声音

    yourbutton.setSoundEffectsEnabled(false);
    

    来源: Disable Button click sound in android

    【讨论】:

    • 我知道如何播放声音,但是有没有办法在 android 中禁用自然的点击声音
    • 查看更新的答案,使用谷歌查询:“android api disable click sound”
    猜你喜欢
    • 2016-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多