J'ai plusieurs fichiers audio dans res/raw
dossier. Je montre ListView
qui contient le nom des fichiers audio. Je veux lire le fichier audio correspondant lorsque l'utilisateur sélectionne dans la liste le nom du fichier. ListView
. J'ai utilisé setDataSource(path)
mais il affiche une erreur pendant la lecture. Comment lire les fichiers audio directement à partir de ce dossier ? Ou y a-t-il un autre moyen ?
Réponses
Trop de publicités?Ajouter ce code dans le onItemClickListener.
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View view, int position,long id) {
TextView txtView=(TextView)view.findViewById(R.id.txt_view);
String fname=txtView.getText().toString().toLowerCase();
int resID=getResources().getIdentifier(fname, "raw", getPackageName());
MediaPlayer mediaPlayer=MediaPlayer.create(this,resID);
mediaPlayer.start();
}
});
Nik Patel
Points
6991
Essayez ceci pour jouer à partir d'un fichier brut : :
MediaPlayer mPlayer2;
mPlayer2= MediaPlayer.create(this, R.raw.bg_music_wav);
mPlayer2.start();
permission dans le fichier manifeste : :
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
Mise à jour : :
public void onItemClick(AdapterView<?> arg0, View view, int position,long id) {
MediaPlayer mPlayer2;
if(position==1)
{
mPlayer2= MediaPlayer.create(this, R.raw.song1);
mPlayer2.start();
}else it() .....
}
Richa
Points
2034
Asthme
Points
561
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// selected item
String product = ((TextView) view).getText().toString();
int [] resID= {R.raw.sound1,R.raw.sound2,R.raw.sound3};
MediaPlayer mediaPlayer=MediaPlayer.create(this,resID[position]);
mediaPlayer.start();
// sending data to new activity
}
});
}
Majid Sadeghi
Points
21
- Réponses précédentes
- Plus de réponses