Reproductor multimedia que reproduce múltiples archivos al mismo tiempo.

Tengo un problema en el que una vez que el usuario hace clic en un sonido para reproducir desde mi ListView, luego, mientras se reproduce ese sonido, hace clic en otro sonido, los 2 sonidos a los que hicieron clic se reproducen al mismo tiempo.

Me gustaría tener el sonido que se estaba reproduciendo en ese momento, terminar, luego comenzar el nuevo sonido en el que hicieron clic más recientemente.

Si alguien pudiera ayudarme, eso sería muy apreciado!

CÓDIGO:

ListView BoardList = (ListView) findViewById(R.id.BoardList);

    String List[] = {

     "Audio1", "Audio2", "Audio3", "Audio4", "Audio5"
         , "Audio6", "Audio7", "Audio8", "Audio9"
           , "Audio10", "Audio11", "Audio12" };

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            R.layout.listcustomize, R.id.textItem, List);

    BoardList.setAdapter(adapter);

    BoardList.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {
            MediaPlayer mPlayer = null;
            if (position == 0) {



                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio1);
                mPlayer.start();
            }

            if (position == 1) {


                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio2);
                mPlayer.start();

            }
            if (position == 2) {


                mPlayer = MediaPlayer.create(HodgeMain.this, R.raw.Audio3);
                mPlayer.start();

            }
            if (position == 3) {


                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio4);
                mPlayer.start();
            }
            if (position == 4) {


                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio5);
                mPlayer.start();
            }
            if (position == 5) {


                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio6);
                mPlayer.start();
            }
            if (position == 6) {


                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio7);
                mPlayer.start();
            }

            if (position == 7) {


                mPlayer = MediaPlayer
                        .create(HodgeMain.this, R.raw.Audio8);
                mPlayer.start();
            }
            if (position == 8) {


                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio9);
                mPlayer.start();
            }
            if (position == 9) {


                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio10);
                mPlayer.start();
            }
            if (position == 10) {


                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio11);
                mPlayer.start();
            }
            if (position == 11) {

                mPlayer = MediaPlayer.create(HodgeMain.this,
                        R.raw.Audio12);
                mPlayer.start();

            }

Respuestas a la pregunta(4)

Su respuesta a la pregunta