2011-12-08 4 views
1

J'ajoute un VideoView à un LinearLayout et je n'arrive pas à le rendre visible à l'écran, LinearLayout est devant. Après que LinearLayout est d'ajouter à un ViewFlipper Voici mon code:VideoView sous LinearLayout, non visible

LinearLayout rr = new LinearLayout(this); 
    rr.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT)); 
    myVideoView = new VideoView(this); 
    myVideoView.setVideoPath(Environment.getExternalStorageDirectory() 
        +"/download/"+"big_buck_bunny.mp4"); 
    myVideoView.requestFocus(); 
    myVideoView.bringToFront(); 

    rr.addView(myVideoView,new LayoutParams(rr.getWidth(),rr.getHeight())); 
    vf.addView(rr); 

Quelqu'un peut-il me aider ??? S'il vous plaît ... Où est mon erreur? Je ne peux pas le voir.

Répondre

0

Il est possible que rr.getWidth/Height() renvoie une taille de 0 car ils n'ont pas encore été mesurés. GetWidth/Height() renvoie la taille de la vue en pixels, car vous avez spécifié que les paramètres de disposition de rr sont fill_parent, fill_parent en utilisant getWidth/Height est inutile.

Essayez de remplacer

rr.addView(myVideoView,new LayoutParams(rr.getWidth(),rr.getHeight())); 

avec

rr.addView(myVideoView,new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT)); 
+0

vous droit ... si je mets comme tu es triste, mais il fonctionne comme cette vidéo apparaissent soudainement et que le problème est ... il doit apparaître lent ... Je ne sais pas comment mieux expliquer. – Gabrielle

+1

ajouter une animation à la disposition linéaire, comme un fondu en, voir la réponse au haut de cette question http://stackoverflow.com/questions/2597329/how-to-do-a-fadein-of-an-image- écran d'activité sur un androïde. – triggs

+0

Je pense que c'est une bonne idée mais je n'ai pas encore résolu mon problème: | – Gabrielle