probleme boucle sur SDcard
Bonjour j ' ai actuellement une interface voicemail en TabActivity concue ainsi
http://www.developpez.net/forums/att...1&d=1271670770
Ce que vous voyez a l ' ecran(nom expediteur,date,bouton play,progressBar) correspond a un pseudo lecteur audio( pas très esthétique pour l instant mais passons)
les musiques interprétés par mon lecteur sont placés sur ma carte SD
Seulement en ce moment , je n ' arrive a lire qu ' une SEULE musique audio(renseigné en dur...)
Je voudrais faire en sorte qu ' il y ait une boucle sur toutes les musiques de ma carte SD et que a chaque musique soit associée un nouveau lecteur avec la musique correspondante qui seront placés les uns en dessous des autres.
J ' arrive bien a le faire sous forme de liste de ce style
http://2.bp.blogspot.com/_WmWhc6_V_W...00-h/music.jpg
mais quant il s ' agit de recréer un lecteur pour chaque piste presente dans la SD je bloque
Merci de votre aide
Classe qui gere le mediaplayer et le 1 er tab activity
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
| package com.dev;
import java.io.File;
import java.io.IOException;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
public class TabVoiceMail extends Activity{
private static final String TAG = "Test";
private MediaPlayer mMediaPlayer;
private static final String MEDIA = "media";
private Button streamButton;
private ImageButton playButton;
private TextView textStreamed;
private boolean isPlaying;
public Button effacer;
private String path;
private TextView tx;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
// setContentView(R.layout.bouton);
this.listerSDCard();
tx = new TextView(this);
tx.setText("Test");
setContentView(R.layout.mediaplayer);
try {
path = "/sdcard/audio.mp3";
mMediaPlayer = new MediaPlayer();
mMediaPlayer.setDataSource(path);
mMediaPlayer.prepare();
} catch (Exception e) {
Log.e(TAG, "error: " + e.getMessage(), e);
}
playButton = (ImageButton) findViewById(R.id.button_play);
playButton.setEnabled(true);
playButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
mMediaPlayer.start();
if (mMediaPlayer.isPlaying()) {
mMediaPlayer.pause();
playButton.setImageResource(R.drawable.button_pause);
} else {
mMediaPlayer.start();
playButton.setImageResource(R.drawable.button_play);
}
isPlaying = !isPlaying;
if (mMediaPlayer.isLooping()) {
mMediaPlayer.start();
playButton.setImageResource(R.drawable.button_play);
} else {
mMediaPlayer.pause();
playButton.setImageResource(R.drawable.button_pause);
}
isPlaying = !isPlaying;
}});
}
public void listerSDCard(){
File rep = new File("/sdcard");
String [] liste;
String txt = new String(" ");
TextView tv = new TextView(this);
liste=rep.list();
for(int i=0;i<liste.length;i++){
txt = txt + liste[i] + " n ";
}
tv.setText(txt);
setContentView(tv);
}
} |