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
Was this helpful?