Picool Posted March 4, 2011 Share Posted March 4, 2011 Bonjour, nouveau jour nouveau soucis ^^. Je souhaites gérer dans une listeView le fait que si je clique sur un item cela lance un unique fichier java (un mediaplayer en fait) mais avec des vidéos différentes selon le choix. Pouvez m'indiquer comment faire ? Merci beaucoup Link to comment Share on other sites More sharing options...
Guest Posted March 4, 2011 Share Posted March 4, 2011 Si tu classes tes vidéos (dans une BDD, ou en utilisant leur référence dans un Array, ... ) dans le même ordre que les éléments de ta liste, il te suffit de récupérer la position de l'élément cliqué via la méthode "setOnItemClickListener" et de lire la vidéo à cette position : taListe.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> parent, final View view, int position, long id) { lireTaVideoAlaPosition(position); } }); C'est bien ça que tu veux? Link to comment Share on other sites More sharing options...
Picool Posted March 4, 2011 Author Share Posted March 4, 2011 Si tu classes tes vidéos (dans une BDD, ou en utilisant leur référence dans un Array, ... ) dans le même ordre que les éléments de ta liste, il te suffit de récupérer la position de l'élément cliqué via la méthode "setOnItemClickListener" et de lire la vidéo à cette position : taListe.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> parent, final View view, int position, long id) { lireTaVideoAlaPosition(position); } }); C'est bien ça que tu veux? Disons que j'ai un fichier java : package com.penspinning; import android.app.Activity; import android.net.Uri; import android.os.Bundle; import android.widget.MediaController; import android.widget.VideoView; public class Mediaplayer extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.video); VideoView videoView = (VideoView) findViewById(R.id.VideoView); MediaController mediaController = new MediaController(this); mediaController.setAnchorView(videoView); // Set video link (mp4 format ) Uri video = Uri.parse("mp4 video link"); videoView.setMediaController(mediaController); videoView.setVideoURI(video); videoView.start(); } } Et à la place de "mp4 video link", j'aimerai avoir une variable qui fait appel à l'élément cliqué dans l'activity précédente et qui donc donne la vidéo correspondant à l'item, je ne sais pas si je suis compréhensible ><. Link to comment Share on other sites More sharing options...
chpil Posted March 4, 2011 Share Posted March 4, 2011 Il faut que tu te serves de l'Intent que tu utilises pour lancer l'Activity MediaPlayer, pour passer la valeur que tu souhaites Dans l'Activity appelante (celle où il y a la ListView): intent.putExtra("url", la_valeur_de_l_url_que_tu_veux_passer_a_l_autre_Activity); // .. startActivity(intent); Dans l'Activity appelée (MediaPlayer), dans le onCreate: Intent intent = getIntent(); Uri video = Uri.parse(intent.getStringExtra("url")); Link to comment Share on other sites More sharing options...
Picool Posted March 4, 2011 Author Share Posted March 4, 2011 Ah merci beaucoup :D Par contre petite question encore ^^, comment fais tu pour appeler la classe mediaplayer à cet endroit ? Intent intent = new Intent(Tricks.this, Mediaplayer.class); switch (position) { case 0: intent.putExtra("url", "http://upload.penspinning.fr/tsuki.mp4"); startActivity(intent); Si c'est ça j'ai un soucis : "duplicate local variable intent" Au final j'ai résolu ça mais bon c'est pas terrible je pense, car je garde ca à la fin: if(intent != null) startActivity(intent); Link to comment Share on other sites More sharing options...
leken Posted March 13, 2011 Share Posted March 13, 2011 bonjour, je voudrais savoir si c'est possible de passer le valeur de la listview selectionner dans une variiable afin de l'utiliser ailleurs merci Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.