2012-09-11 9 views
6

En mi programa de im tratando de tener el vídeo en pantalla completa pero sin relación de aspecto ruptura de la reproducción de vídeo,vídeo a pantalla completa sin rotura Relación de aspecto

en el reproductor por defecto de Android que tiene el botón en la esquina superior izquierda cuando se presiona que se desplace vídeo a la vista sin distorsión de vídeo que mantener la relación de aspecto:

como por debajo de la imagen:

enter image description here

im tratar de conseguir el vídeo en pantalla completa con el siguiente código:

<?xml version="1.0" encoding="utf-8"?> 
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" > 
    <VideoView android:id="@+id/myvideoview" 
     android:layout_width="fill_parent" 
     android:layout_alignParentRight="true" 
      android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
      android:layout_alignParentBottom="true" 
     android:layout_height="fill_parent"> 
     </VideoView> 
    </RelativeLayout> 

Este código anteriormente conducen a vídeo a pantalla completa PERO sin mantener la relación de Aspest

Por favor, ¿algún consejo cuerpo me en cómo llegar video de pantalla completa Sin relación de aspecto de descanso.

Mis videos almacenados en la carpeta sin formato de la carpeta de recursos de la aplicación.

indique el código de trabajo completo.

busqué mucho aquí y en google pero no puedo encontrar mi objetivo,

otro post encontrado aquí en stackoverflow con la misma pregunta, pero sin respuesta correcta en este enlace:

Full screen videoview without stretching the video.

im usando VideoView para mostrar mis videos en mi aplicación de la siguiente manera:

public class Video extends Activity { 
    private VideoView videoview;  
     @Override 
     public void onCreate(Bundle icicle) { 
       super.onCreate(icicle);  
       setContentView(R.layout.main); 
    videoview = (VideoView) findViewById(R.id.count_videoview); 
    videoview.setVideoURI(Uri.parse("android.resource://" + getPackageName() 
      +"/"+R.raw.first_video));  
    videoview.setMediaController(new MediaController(this));  
    videoview.requestFocus();  
    videoview.start(); 
       } 
      } 

Gracias de antemano.

+0

Agregue enlace a [pregunta similar] (http://stackoverflow.com/questions/12211837/full-screen-videoview-without-stretching-the-video#comment16405010_12211837), tenga en cuenta que la respuesta recompensada en ese enlace doesn ' t trabajo. – yorkw

+0

@yorkw link agregado y actualizado, tome alook, gracias – androidqq6

+0

Compruebe la respuesta desde aquí: http://stackoverflow.com/questions/8240051/android-mediaplayer-video-aspect-ratio-issue – execomrt

Respuesta

0

Obtenga la altura y el ancho del video original.
Obtenga la altura y el ancho de la pantalla (en la orientación actual).

float ratioWidth = screenWidth/videoWidth; 
float ratioHeight = screenHeight/videoHeight; 
float fullWidth; 
float fullHeight; 
if (ratioWidth < ratioHeight) { 
    fullWidth = videoWidth * ratioWidth; 
    fullHeight = videoHeight * ratioWidth; 
} else { 
    fullWidth = videoWidth * ratioHeight; 
    fullHeight = videoHeight * ratioHeight; 
} 

Conjunto fullWidth y fullHeight a la VideoView.

+0

indique el código de trabajo completo, estoy usando la clase videoview para mostrar el video en mi aplicación, no soy experto en android, gracias – androidqq6

Cuestiones relacionadas