想要播放随机声音时按下按钮安卓



我使用以下代码在按下按钮时播放随机声音,但它显示了一个我无法解决的错误。有人能帮忙吗:

 Button myButton = (Button)findViewById(R.id.button1);
        final List<Integer> soundList = new ArrayList<Integer>();
        soundList.add(R.raw.sound);
        soundList.add(R.raw.sound1);
        soundList.add(R.raw.sound2);
        soundList.add(R.raw.sound3);

       myButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
             playRandomSound();
        }
        private void playRandomSound() {
            // TODO Auto-generated method stub
            int randomInt = (new Random().nextInt(soundList.size()));
            int sound = soundList.get(randomInt);
            MediaPlayer mp = MediaPlayer.create(this, sound);
            mp.start();
        }
    });

错误:The method create(Context, int) in the type MediaPlayer is not applicable for the arguments (new View.OnClickListener(){}, int)

类型MediaPlayer中的方法create(Context,int)不是适用于参数(new View.OnClickListener(){},int)

Activity上下文作为第一个参数传递给create方法,如下所示:

MediaPlayer mp = MediaPlayer.create(myButton.getContext(), sound);

您可以使用它

final MediaPlayer mp = MediaPlayer.create(this, R.raw.soho);

其中"this"是您活动的实例。然后在按钮的onCLickListener中调用

mp.start();

最新更新