对比之间在自定义适配器中设置列表项点击事件监听器的方法, 这里说明第二种方法, 这种办法相对更好,更省内存资源
同是Miwok项目, 举个例子, 在NumbersActivity中可以用一种方法设置列表项的点击事件监听器, 之间在NumbersActivity中利用listView.setOnItemClickListener()设置;
另外注意: 在播放完后, 一旦该MediaPlayer对象再被使用,应该调用release()方法将这些资源释放.
public class NumbersActivity extends AppCompatActivity {
MediaPlayer mediaPlayer;
//This listener gets triggered when the {@link MediaPlayer} has completed
//playing the audio files.
private MediaPlayer.OnCompletionListener completionListener = new MediaPlayer.OnCompletionListener(){
public void onCompletion(MediaPlayer mediaPlayer){
//Toast.makeText(NumbersActivity.this, "I'm done" , Toast.LENGTH_SHORT).show();
//Now that the sound file has finished playing, release the media player resources.
releaseMediaPlayer();
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_numbers);
//create a list of Word
final ArrayList<Word> words = new ArrayList<Word>();
words.add(new Word("lutti", "one", R.drawable.number_one, R.raw.number_one));
words.add(new Word("otiiko", "two", R.drawable.number_two,R.raw.number_two));
words.add(new Word("tolookosu", "three", R.drawable.number_three, R.raw.number_three));
words.</