Cara Membuat Layout Inflater Di Android

Layout Inflater ini berfungsi untuk membuat tampilan baru di atas tampilan layout utama, jadi analoginya seperti tumpukan layout. Untuk membuat layout inflater ini cukup mudah, cara dan langkah-langkahny akan saya jelaskan di bawah ini.



Langkah pertama kita buat layout utama terlebih dahulu dan jangan lupa untuk menambahkan id pada layout tersebut. Kemudian kita buat layout baru yang nantinya akan di inflate dengan layout yang pertama tadi. Berikut adalah contoh layout yang saya buat.

layout_main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/master_layout"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    tools:context=".MainActivity">
    
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hallow World"/>

</RelativeLayout>

Pada script layout di atas saya beri id master_layout

layout_inflate.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    android:background="@android:color/transparent"
    android:id="@+id/inflate">
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
 android:text="This Layout Inflate" />
</RelativeLayout>

Pada script layout diatas saya beri id inflate, dan berisi text view dengan posisi dibawah layar. Dan selanjutnya tinggal beralih di script javanya. Pada MainActivity.java tambahkan script dibawah ini.

RelativeLayout rlay = (RelativeLayout)findViewById(R.id.master_layout);
View view = getLayoutInflater().inflate(R.layout.layout_inflate, rlay,false);
rlay.addView(view);

Sekarang tinggal build dan jalankan, nanti akan muncul dua tulisan hello world di atas dan This Layout Inflate di bawah. Anda juga bisa menambahkan komponen-komponen lain seperti button atau yang lainnya.



Post a Comment