2017-06-20 4 views
0

Momentan stelle ich den Video-Pfad einer Video-Ansicht so ein;Ändern des Pfades eines Videos in VideoView

"android.resource://" + getPackageName() + "/" + R.raw.videoName 

jedoch mag ich in der Lage sein videoName zu ändern, indem Sie Namen der Videodateien aus einem Array auswählen, die aus der Datei in R.raw generiert wurde.

Was wäre der beste Weg, dies zu tun?

+0

hinzufügen Schalterbedingung für ein Array. weil ich glaube nicht, dass Sie diese R.raw in for-Schleife verwenden können. –

Antwort

0

Eine Möglichkeit habe ich es, indem den Pfad so zu tun war, heraus, wo Pfad ein String-Variable von einer array.get (Position) aufgenommen ist.

0

Angenommen, Sie haben 2 Videos.

int videoArray[]={R.raw.videoName1,R.raw.videoName2}; 

public void onCreate(Bundle savedInstanceState) 
{ 
button1 = ((Button)this.findViewById(R.id.button1)); 
button2 = ((Button)this.findViewById(R.id.button2)); 
button1.setOnClickListener(this); 
button2.setOnClickListener(this); 
VideoView vv = (VideoView) this.findViewById(R.id.surface); 
} 

public void onClick(View v) { 
    switch(v.getId()){ 
    case R.id.button1: 
     String uriPath = "android.resource://"+ getPackageName() + "/raw/"+videoArray[0]; 
     Uri uri = Uri.parse(uriPath); 
     vv.setVideoURI(uri); 
     vv.start(); 
     break; 
    case R.id.button2: 
     String uriPath = "android.resource://"+ getPackageName() + "/raw/"+videoArray[1]; 
     Uri uri = Uri.parse(uriPath); 
     vv.setVideoURI(uri); 
     vv.start(); 
     break; 
} 
+0

Das ändert das Video je nach geklicktem Button? – Huhtamaki

+0

ja ist es. Sie können mehr wie in Recyclerview tun. –