La lecture audio des fichiers l'un après l'autre

J'ai une liste de fichiers audio tels que ce,

int music_numbers[] = { R.raw.one, R.raw.two, R.raw.three, R.raw.four,
            R.raw.five, R.raw.six, R.raw.seven, R.raw.eight, R.raw.nine };

J'ai besoin pour jouer à ce un par un - quand j'envoie 100 à ce play_numbers méthode - je suis l'intention de jouer chiffres sage..

Je l'ai fait mais j'ai pas pu le faire l'un après l'autre..

private void _play_numbers(final String i) {
    //TODO Auto-generated method stub

    mPlayer = MediaPlayer.create(PlayFileActivity.this, R.raw.payment);
    mPlayer.start();

    mPlayer.setOnCompletionListener(new OnCompletionListener() {

        @Override
        public void onCompletion(MediaPlayer mp) {
            //TODO Auto-generated method stub
            mPlayer.stop();
            myDigit = i.charAt(1) + "";

            _function_play_file(Integer.parseInt(myDigit));

        }

    });

}

dans _function_play_file - j'ai ce

void _function_play_file(int files) {

        switch (files) {
        case 0:
            mPlayer = MediaPlayer.create(this, music_numbers[0]);
            mPlayer.start();
        case 1:
            mPlayer = MediaPlayer.create(this, music_numbers[1]);
            mPlayer.start();
        case 2:
            mPlayer = MediaPlayer.create(this, music_numbers[2]);
            mPlayer.start();
        case 3:
            mPlayer = MediaPlayer.create(this, music_numbers[3]);
            mPlayer.start();
        case 4:
            mPlayer = MediaPlayer.create(this, music_numbers[4]);
            mPlayer.start();
        case 5:
            mPlayer = MediaPlayer.create(this, music_numbers[5]);
            mPlayer.start();
        case 6:
            mPlayer = MediaPlayer.create(this, music_numbers[6]);
            mPlayer.start();
        case 7:
            mPlayer = MediaPlayer.create(this, music_numbers[7]);
            mPlayer.start();
        case 8:
            mPlayer = MediaPlayer.create(this, music_numbers[8]);
            mPlayer.start();
        case 9:
            mPlayer = MediaPlayer.create(this, music_numbers[9]);
            mPlayer.start();
        case 10:
            mPlayer = MediaPlayer.create(this, music_numbers[10]);
            mPlayer.start();

        }
    }
Tout d'abord, votre commutateur est absent de la casse; Ne pourrais pas vous utiliser mPlayer = MediaPlayer.créer(ce, music_numbers[fichiers]) à la place?
Quelle est l'erreur?
Tous les cas en cas de commutateur doit être terminé avec les "casser". Rendez-vous ici -> docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html

OriginalL'auteur Sanjay Herle | 2012-05-28