2016-07-13 17 views
-2

Ich habe 3 Media Player und möchte, wenn ich auf ImageButton klicke alle drei Media Player zusammen stoppen.Wie kann ich 3 Mediaplayer stoppen, wenn ich auf eine Bildschaltfläche klicke?

hier ist mein Code:

private MediaPlayer mp,mp1,mp2; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.page1); 
    final TextView myText = (TextView) findViewById(R.id.textView1); 
     MediaPlayer mp = MediaPlayer.create(Page1Activity.this, R.raw.two); 
      mp.start(); 
      myText.setText("2"); 
    final TextView myText2 = (TextView) findViewById(R.id.textView2); 
     MediaPlayer mp1 = MediaPlayer.create(Page1Activity.this, R.raw.two); 
      mp1.start(); 
      myText2.setText("2"); 
    final TextView myText3 = (TextView) findViewById(R.id.textView3); 
     MediaPlayer mp2 = MediaPlayer.create(Page1Activity.this, R.raw.four); 
      mp2.start(); 
      myText3.setText("4"); 
    ImageButton btn1 = (ImageButton) findViewById(R.id.imageButton1); 
    btn1.setOnClickListener(new OnClickListener() 
    { public void onClick(View v) 
     { Intent i = new Intent(Page1Activity.this, Page2Activity.class);  
      startActivity(i); 

      if (mp != null) { mp.stop(); mp.release(); mp = null;} 
      if (mp1 != null) { mp1.stop(); mp1.release(); mp1 = null;} 
      if (mp2 != null) { mp2.stop(); mp2.release(); mp2 = null;} 
     } }); 

Wie kann ich alle drei Media-Player zusammen stoppen?

+0

Tun Sie dasselbe, welches Problem Sie konfrontiert sind? und ein Vorschlag verschiebe den gesamten Code in Bezug auf stop media player vor 'startActivity (i);' –

+0

Also, was ist das Problem? –

+0

@ ρяσѕρєяK Vielen Dank. Ich bewege sie vor startActivity, aber nicht funktioniert und nicht aufhören – MonaK

Antwort

1
private MediaPlayer mp,mp1,mp2; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.page1); 
    final TextView myText = (TextView) findViewById(R.id.textView1); 
     mp = MediaPlayer.create(Page1Activity.this, R.raw.two); 
      mp.start(); 
      myText.setText("2"); 
    final TextView myText2 = (TextView) findViewById(R.id.textView2); 
     mp1 = MediaPlayer.create(Page1Activity.this, R.raw.two); 
      mp1.start(); 
      myText2.setText("2"); 
    final TextView myText3 = (TextView) findViewById(R.id.textView3); 
     mp2 = MediaPlayer.create(Page1Activity.this, R.raw.four); 
      mp2.start(); 
      myText3.setText("4"); 
    ImageButton btn1 = (ImageButton) findViewById(R.id.imageButton1); 
    btn1.setOnClickListener(new OnClickListener() 
    { public void onClick(View v) 
     { Intent i = new Intent(Page1Activity.this, Page2Activity.class);  
      startActivity(i); 

      if (mp != null) { mp.stop(); mp.release(); mp = null;} 
      if (mp1 != null) { mp1.stop(); mp1.release(); mp1 = null;} 
      if (mp2 != null) { mp2.stop(); mp2.release(); mp2 = null;} 
     } }); 

Dude .. Sie deklarieren seine zwei Mal. Bitte versuchen Sie diesen Code.

+0

Was ist in diesem Code geändert Babul ?? – MonaK

+0

private MediaPlayer mp, mp1, mp2; und mp = MediaPlayer.create (Page1Activity.this, R.raw.two); –

+0

@MonaK Er hat Mediaplayer-Objekte zweimal deklariert. –