redimensionar bitmap android studio
Escala de una imagen al ancho máximo disponible, manteniendo la relación de aspecto y evitando el espacio extra de ImageView (5)
En mi opinión, este diseño adicional de ImageView
es un error. Me sucedió lo mismo. Como resultado, el texto que quería seguir en green_square
siguió el diseño adicional. Entonces, lo que hice fue especificar el texto relativo a la parte inferior de la pantalla. De esa manera, el texto iría sobre el diseño extra. Admito que no era la mejor solución, pero se ve mucho mejor que tener un espacio enorme entre el green_square
y el texto.
Tengo este XML de diseño simple y un archivo green_square.png que tiene 30X30 píxeles
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ImageView
android:background="@color/red"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:adjustViewBounds="true"
android:scaleType="fitStart"
android:src="@drawable/green_square"/>
</LinearLayout>
Lo que estoy tratando de lograr es escalar la imagen para llenar el ancho principal, manteniendo su relación de aspecto sin espacio adicional de ImageView.
He agregado un fondo rojo a ImageView solo como referencia del espacio adicional que quiero evitar.
Es tan simple. Solo haz el ancho fill_parent y la altura wrap_content. Aquí está el que me di cuenta.
<ImageView
android:id="@+id/game"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:scaleType="centerCrop"
android:adjustViewBounds="true"
android:src="@drawable/ic_game"
/>
Prueba esto,
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/red"
android:scaleType="centerCrop"
android:src="@drawable/green_square" />
</LinearLayout>
Utilice el tipo de escala "fitCenter" o "fitxy"
<ImageView
android:id="@+id/game"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:scaleType="centerCrop"
android:adjustViewBounds="true"
android:src="@drawable/ic_game"
/>
esto funciona para mi Ancho completo del recorte principal y central para mantener la relación de aspecto