问题
How can I set my code to click on 1st item in Grid View? I got this `
mp=MediaPlayer.create(this, R.raw.snd1);
gridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
mp.start();
switch (position) {
case 0:
break;
case 1:
break;
}
}
}); `
I got this code, but it's playing the sound on every item in the Grid View. How can I set it so it clicks only on 1st? Or 2nd Or 3d?
回答1:
Just Change to this:
mp=MediaPlayer.create(this, R.raw.snd1);
gridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
switch (position) {
case 0:
mp.start(); // This will make sound
break;
case 1:
mp2.start(); // This will make different sound
break;
}
}
});
回答2:
Don't you have to put your mp.start(); to the switch? Like that:
mp=MediaPlayer.create(this, R.raw.snd1);
gridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
switch (position) {
case 0:
mp.start();
case 1:
break;
}
}
});
来源:https://stackoverflow.com/questions/21555637/grid-view-and-media-player-on-click