If you press the play button among a,b,c music, and if you press the confirmation button, music B is played I want to implement the function of playing c music when I press the confirmation button... I've done the transition from music a to music b... I don't know how to move on to musicPlease help me<
Button btn1, btn2; //play button and confirm button
MediaPlayer mp,mp1,mp2;
protected void onCreate(Bundle savedInstanceState) {
btn1 = (Button)findViewById(R.id.button1);
btn1.setOnClickListener(listener);
btn2 = (Button)findViewById(R.id.button2);
btn2.setOnClickListener(listener);
mp = MediaPlayer.create(MainActivity.this, R.raw.music);
mp1 = MediaPlayer.create(MainActivity.this, R.raw.music1);
mp2 = MediaPlayer.create(MainActivity.this, R.raw.music2);
}
Button.OnClickListener listener = new Button.OnClickListener()
{
public void onClick(View v)
{
switch(v.getId()){
//When pressing the Play button
case R.id.button1:
mp = MediaPlayer.create(MainActivity.this, R.raw.music);
//Play sound source through object
mp.start();
break;
//If you press the OK button
case R.id.button2:
//The music stop that was played before
mp.pause();
//Then import the sound source and recreate the object
mp = MediaPlayer.create(MainActivity.this, R.raw.music1);
mp.start();
break;
}
} };
To summarize the question, I understood that I want to play 3 pieces of music in rotation every time I press the confirmation button, is that right?
I think we can solve the problem you want if you apply modular arithmetic and arrangement properly.
Next, if you modify the code based on the questioner's code, you can do it as follows.
The variables mp, mp1, mp2 are set to mp, and the sound source part is changed to an array.
private int songs[]; // sound source list
private int playing = -1; // sound source indicator currently playing
private ... onCreate(...) {
// within the onCreate function
songs = new int[3];
songs[0] = R.raw.music;
songs[1] = R.raw.music1;
songs[2] = R.raw.music2;
}
For the playback button in the button section, do the following:
playing=0;
if( mp!=null ) {
mp.stop(); // or pause
}
mp = MediaPlayer.create(MainActivity.this, songs[ playing ]);
mp.start();
The confirmation button is as follows:
playing = (playing+1)%songs.length; // Select first again when the end of the list is reached.
if( mp!=null ) {
mp.stop(); // or pause
}
mp = MediaPlayer.create(MainActivity.this, songs[ playing ]);
mp.start();
914 When building Fast API+Uvicorn environment with PyInstaller, console=False results in an error
572 rails db:create error: Could not find mysql2-0.5.4 in any of the sources
617 Uncaught (inpromise) Error on Electron: An object could not be cloned
611 GDB gets version error when attempting to debug with the Presense SDK (IDE)
© 2024 OneMinuteCode. All rights reserved.