Когда вы нажимаете на две кнопки, вы слышите два звука. Как я могу остановить первый звук и воспроизвести второй звук или когда я играю первый звук, что второй звук останавливается? Как я могу создать это? Вот мой Media PlayerAndroid MediaPlayer не останавливается нажатием другой кнопки
final LinearLayout lm = (LinearLayout) findViewById(R.id.linearMain);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
JSONArray songs = (JSONArray) response.getJSONArray("songs");
for (int i = 0; i < songs.length(); i++)
{
// Create LinearLayout
audio = songs.getJSONObject(i).getString(TAG_AUDIO) ;
String chanson = songs.getJSONObject(i).getString("title") ;
String duration = songs.getJSONObject(i).getString(TAG_DURATION) ;
LinearLayout ll = new LinearLayout(getApplicationContext());
ll.setOrientation(LinearLayout.HORIZONTAL);
final TextView txtchanson = new TextView(getApplicationContext());
txtchanson.setText(chanson);
txtchanson.setPadding(10, 0, 10, 0);
TextView txtduration = new TextView(getApplicationContext());
txtduration.setText(duration);
final Button btn = new Button(getApplicationContext());
final MediaPlayer mp = new MediaPlayer();
mp.setAudioSessionId(i+1);
mp.setDataSource(audio);
mp.prepare();
btn.setId(i+1);
btn.setTypeface(ionicons);
btn.setText(getString(R.string.play_str));
btn.setLayoutParams(params);
final int index = i;
mp.setOnCompletionListener(new OnCompletionListener()
{
public void onCompletion(MediaPlayer mp)
{
btn.setText(getString(R.string.play_str));
}
});
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v)
{
Log.i("TAG", "index :" + index);
Toast.makeText(getApplicationContext(),
"Clicked Button Index :" + btn.getId(),
Toast.LENGTH_LONG).show();
boolean b = false ;
if (b == false)
{
//txtchanson.setTextColor(R.color.green);
mp.start();
btn.setText(getString(R.string.pause_str));
b = true;
}
else //if (btn.getText().equals(getString(R.string.pause_str)))
{
mp.pause();
btn.setText(getString(R.string.play_str));
//txtchanson.setTextColor(R.color.gray);
b = false;
}
/* else if (b == true)
{
btn.setText(getString(R.string.play_str));
mp.pause();
}*/
}
});
ll.addView(btn);
ll.addView(txtchanson);
ll.addView(txtduration);
lm.addView(ll);
}
второй щелчок второй кнопки не работает, я хочу, когда я нажимаю кнопку воспроизведения сначала, и когда я нажимаю на другую кнопку, первая приостанавливается, а вторая воспроизводится! –
у вас есть только одна кнопка, поэтому при первом нажатии этой кнопки вы должны запустить плеер, а при втором нажатии той же кнопки вы должны остановить его. Вы попробовали это с моим предложением? –
Я попробовал ваше предложение и его не работал, ошибка, которая у меня была, заключается в том, что когда я нажимаю первый раз, когда играет песня, но когда я нажимаю второй раз на второй кнопке, то не работает –