Android Porcentaje de diseños


Ejemplo

2.3

Percent Support Library proporciona PercentFrameLayout y PercentRelativeLayout , dos ViewGroups que proporcionan una manera fácil de especificar las dimensiones y márgenes de la Vista en términos de un porcentaje del tamaño general.

Puede usar la biblioteca de soporte de porcentaje agregando lo siguiente a sus dependencias.

compile 'com.android.support:percent:25.3.1'

Si quisiera mostrar una vista que llene la pantalla horizontalmente pero solo la mitad de la pantalla verticalmente, haría lo siguiente.

<android.support.percent.PercentFrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <FrameLayout
        app:layout_widthPercent="100%"
        app:layout_heightPercent="50%"
        android:background="@android:color/black" />

<android.support.percent.PercentFrameLayout>

También puede definir los porcentajes en un archivo XML separado con código como:

<fraction name="margin_start_percent">25%</fraction>

Y consúltelos en sus diseños con @fraction/margin_start_percent .

También contienen la capacidad de establecer una relación de aspecto personalizada a través de la app:layout_aspectRatio .
Esto le permite establecer solo una dimensión, como solo el ancho, y la altura se determinará automáticamente en función de la relación de aspecto que haya definido, ya sea 4: 3 o 16: 9 o incluso un cuadrado 1: 1 relación de aspecto.

Por ejemplo:

 <ImageView
    app:layout_widthPercent="100%"
    app:layout_aspectRatio="178%"
    android:scaleType="centerCrop"
    android:src="@drawable/header_background"/>