2016-04-04 29 views
0

Ich möchte, dass der Fokus automatisch zur nächsten Zeilenposition in Recyclerview bewegt wird. Meine Recyclerview enthält eine videoview. Auf Medien Abschluss möchte ich die nächste Videoview werden played.Videoview nächste Video abgespielt wird, aber nur in der ersten Position VideoviewAutomatisch zur nächsten Zeile in Recyclerview wechseln

private static int position= 0; 
public static class ViewHolder extends RecyclerView.ViewHolder { 
    private VideoView videoView;   
    view.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     position= getAdapterPosition(); 
     //recyclerView.smoothScrollToPosition(position); 
     Log.d("TAG_LIST", "Element " + position+ " clicked."); 
    } 
    }); 
} 
holder.videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { 
    @Override 
    public void onCompletion(MediaPlayer mp) { 
    //recyclerView.smoothScrollToPosition(position); 
    Video(holder); 
    } 
}); 

private void Video(ViewHolder holder) { 
    if (++position>= items.size()) { 
    // Last song, just reset position 
    position= 0; 
    } else { 
    // Play next song 
    recyclerView.smoothScrollToPosition(position); 
    AsyncTask task = new AsyncTask (items.get(position).getUrl(), holder,position); 
    task.execute(items.get(position).getUrl()); 
    } 
} 
+1

Poste einen Code von dem, was du versucht hast. –

+0

Könntest du ein wenig über "Fokus" erzählen? Meinst du das Hervorheben, Scrollen, Entfernen von Top-Items oder nur das automatische Abspielen von Medien? –

+0

ich habe videoview in Recyclerview. Wenn das erste Video abgeschlossen ist, muss der Fokus zur nächsten Position bewegt werden, um die nächste Videoansicht zu spielen. Wie im Falle eines normalen Players wird ein Video abgeschlossen und das nächste Video wird abgespielt –

Antwort

0

Sie hatten keine Code schreiben, um Ihr Problem verwandt, aber ich kann Ihnen einige Methoden hierfür vorschlagen.

  1. Findet das erste sichtbare Element Position auf RecyclerView und starten Video direkt am VideoView
  2. Änderungen bewegen Hören auf Ihrem RecyclerView und wenn das erste sichtbare Element Index geändert, stoppen Sie den Video- und starten nächste RecyclerView Artikel VideoView
Verwandte Themen