Ratio

Ratio, View bileşenlerinin bir boyutunun diğer boyutuna oranlı şekilde gösterilmesi için kullanılır. Bu özellik kullanılırken dikkat edilmesi gereken konu, MATCH_CONSTRAINT değerlerinden birinin 0dp olması gerekliliğidir.

Örnek-1:

<TextView
    android:id="@+id/textA"
    android:layout_width="wrap_content"
    android:layout_height="0dp"
    android:text="Text A"
    android:background="#ffb300"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintDimensionRatio="1:1" />

Örnek-1 Açıklama: Örneğimizde layout_height değeri 0dp verilerek, layout_width değerinin alacağı içerik değerine göre 1:1 oranında bir çıktı üretmesini istedik.

Örnek-2:

<TextView
    android:id="@+id/textB"
    android:layout_width="50dp"
    android:layout_height="0dp"
    android:text="Text B"
    android:background="#b7ff00"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintDimensionRatio="1:1" />

Örnek-2 Açıklama: Örneğimizde layout_height değeri 0dp verilerek, layout_width değerine sabit 50dp değeri vererek, bu değere göre 1:1 oranında bir çıktı üretmesini istedik.

Örnek-3:

<TextView
    android:id="@+id/textC"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:text="Text C"
    android:background="#ffb300"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintDimensionRatio="H,16:9" />

Örnek-3 Açıklama: Örneğimizde hem layout_height değeri hem de layout_width değerine sabit 0dp değeri vererek, Ratio parametresinde belirttiğimiz H,16:9 oranına göre bir çıktı üretmesini istedik. Burada bileşen önce width değerini hesaplayacak, sonra verdiğimiz H,16:9 oranına göre height değerini 16:9 oranında hesaplayacaktır.

Örnek-4:

<TextView
    android:id="@+id/textD"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:text="Text D"
    android:background="#ffb300"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintDimensionRatio="W,4:3" />

Örnek-4 Açıklama: Örneğimizde hem layout_height değeri hem de layout_width değerine sabit 0dp değeri vererek, Ratio parametresinde belirttiğimiz W,4:3 oranına göre bir çıktı üretmesini istedik. Burada bileşen önce height değerini hesaplayacak, sonra verdiğimiz W,4:3 oranına göre width değerini 4:3 oranında hesaplayacaktır.

Last updated