Hai Guys, pada post kali ini kita bahas mengenai aturan dimens pada Android. Mungkin biasanya teman-teman membuat layout dengan harcode dp, sebenarnya yang dianjurkan adalah Kamu menggunakan penyimpanan ukuran pada file dimens.xml

<Switch
    android:id="@+id/round_up_switch"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:checked="true"
    android:text="Round up tip?"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="@id/tip_options"
    app:layout_constraintTop_toBottomOf="@id/tip_options" />

Code disana mungkin tidak terlihat kekurangannya ya, namun bagaimana klo kita ubah seperti ini :

<Switch
    android:id="@+id/round_up_switch"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:checked="true"
    android:text="Round up tip?"
    android:margin="16dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="@id/tip_options"
    app:layout_constraintTop_toBottomOf="@id/tip_options" />

Disana kita menambahkan attribut margin, sekarang kamu bayangkan aplikasi kita dirunning dibeberapa tempat misalnya tab dengan ukuran layar 1024×768, 1024×600 ataupun yang lebih besar misalnya 2560×1800, tentu hasilnya tidak akan sama. Bagaimana cara agar viewnya tetap terjaga lebih bagus? ya caranya adalah dengan memindahkan 16dp ke file dimens yang sesuai dengan layar. Misalnya seperti ini :

DeviceUkuran LayarDimens
7 inchi1024×600sw600dp
8 inchi1024×768sw1000dp
9 inchi2560×1800sw800dp
table folder dimens

Kemudian teman-teman bisa membuat table ukuran 16dp itu berapa disetiap layar, misalnya seperti ini :

Dimenssw600dpsw1000dpsw800dp
16dp16dp32dp64dp
18dp18dp34dp66dp
table file dimens

Tentu saja table file dimens ini hanyalah sample ya, teman-teman bisa coba sesuaikan berdasarkan UI dari TIM PRODUCT karena saya yakin, kebutuhan teman-teman tidak akan sama dengan kebutuhan saya.

Terimakasih dan Semoga Bermanfaat

Categorized in:

Tagged in:

,