2014-11-20 23 views
9

Sono nuovo nello sviluppo di Android e sto cercando di riprodurre più video in una listview. Attualmente, ogni elemento della riga listview è una visualizzazione video. Questo approccio non ha funzionato come le VideoViews agiscono in modo anomalo quando comincio a scorrere. Ho ricercato here, here, here e ho scoperto che VideoViews e TextureViews non funzionano bene all'interno di ListViews e ScrollView. In che modo le app come vite e instagram sono in grado di riprodurre video in visualizzazioni di elenchi? Qualsiasi aiuto è molto apprezzato?Come faccio a riprodurre video in ListView come Instagram e Vine?

+0

Scegli questa http://stackoverflow.com/questions/5896921/android-scrollview-having-videoview-is-giving-problem/ – Kiloreux

+0

prega di consultare il seguente link [http: //stackoverflow.com/questions/5896921/android-scrollview-having-videoview-is-giving-problem/6832598#6832598][1] [1]: http: // StackOverflow.it/questions/5896921/android-scrollview-having-videoview-is-giving-problem/6832598 # 6832598 –

+0

Se non hai ancora trovato una risposta, ecco un buon articolo: https://medium.com/@v .danylo/implementation-video-playback-in-a-scroll-list-listview-recyclerview-d04bc2148429 # .ty01zm2it – Andrei

risposta

0

Per la riproduzione di video in ListView, è necessario aprire Video on articolo scatti di ListView allora si può recuperare l'URL del video nella stringa come:

String myUrl = urHashMaparraylist.get(position).get("videolocation"); 

Ora passare questo myUrl alla prossima attività e appena impostato String come

Uri video = Uri.parse(myUrl); 
videoView.setVideoURI(video); 

listView.setOnItemClickListener(new OnItemClickListener() { 
    @Override 
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) 
    { 
     String myUrl = urHashMaparraylist.get(position).get("videolocation"); 
     Intent n = new Intent(YourActivityName.this , NewActivityName.class); 
     n.putExtra("videolocation",myUrl); 
     startActivity(n);  
    } 

}); 

Ora nel tuo prossimo attività recuperare come un

Uri video = Uri.parse(url); 
videoView.setVideoURI(video); 

In alcuni casi, per l'impostazione VideoView, è possibile utilizzare:

android:background:"#0000" 

dal Android Scrollview having videoview is giving problem

Invece di VideoView si può anche provare a utilizzare TextureView per riferimento si può vedere il numero 2 di riferimento:

per ulteriori riferimento per lo streaming video ... è possibile controllare il seguente url: 1>http://developer.samsung.com/android/technical-docs/Android-Media-Streaming-Tutorial

2>http://developer.android.com/reference/android/view/TextureView.html

+0

Se l'utente desidera riprodurre video nello stesso posto dell'elemento riga quindi cosa dovrebbe usare? –

0

Anche se la risposta è in ritardo, ma penso che potrebbe aiutare qualcuno alla ricerca dello stesso. V'è un'applicazione di esempio dal github che ha implementazione per questo requirement.:-

https://github.com/danylovolokh/VideoPlayerManager

Per la comprensione del codice di riferimento al seguente link è davvero utile per voi: -

https://medium.com/@v.danylo/implementing-video-playback-in-a-scrolled-list-listview-recyclerview-d04bc2148429

Il problema è che ci sono alcune limitazioni in VideoView in listview e la gestione delle riproduzioni quindi questo strumento libreria è il VideoView basato su TextureView. Qui è come sembra enter image description here