2013-08-21 81 views
1

我正在尝试播放声音OnItemClickListView我设置了。尝试播放声音时出错OnItemClick

我得到错误“的方法create(Context, int)在类型MediaPlayer不适用于参数(new AdapterView.OnItemClickListener(){}, int)”与“创造”强调。

不是100%肯定,为什么我收到此错误,如果有人可以帮助,将不胜感激。

ListView BoardList = (ListView) findViewById(R.id.BoardList); 
BoardList.setChoiceMode(ListView.CHOICE_MODE_SINGLE); 

String List[] = {"Play 1", "Play 2", "Play 3", "Play 4", "Play 5", "Play 6", "Play 7", "Play 8", "Play 9" }; 
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.listcustomize, R.id.textItem, List); 

BoardList.setAdapter(adapter); 
BoardList.setOnItemClickListener(new OnItemClickListener() { 
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
     if (position == 0) { 
      MediaPlayer mPlayer = MediaPlayer.create(this, R.raw.Audio1); 
      mPlayer .start(); 
      } 
     } 
    }); 

回答

5

而不是this你的MediaPlayer对象里面,你应该写YourActivityName.this,然后再试一次!

MediaPlayer mPlayer = MediaPlayer.create(YourActivityName.this, R.raw.Audio1); 

发生此错误是因为您位于侦听器中,而字this引用侦听器本身而不是您的活动。

+0

如果它帮助你,欢迎你接受它!谢谢 – Pavlos

+0

谢谢你好,先生,你今天教过一些永远不会被遗忘的东西,谢谢。 – Jack

+0

也许你可以扩大你的答案一点,包括范围的解释。我相信未来的读者将会发现它很有用! – Eric