Belajar SQLite CRUDS dengan Penerapan pada Arsitektur MVP

SQLite adalah databases yang mendukung operasi relasi standar dengan Engine databases seperti sintak SQL, SQLite memiliki ukuran kecil dan dapat berjalan pada Device dengan memori terbatas seperti device Smartphone.

SQLite mampu menyimpan dalam jumlah banyak dengan optimasi untuk query dan input data, dapat menyimpan lebih dari 150.000 baris data dan dapat dilakukan optimasi memasukan data dalam jumlah banyak.

Design Layout

Anda buat design layout dengan nama items.xml, digunakan untuk menampilkan setiap item data yang akan tampil pada RecyclerView.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:id="@+id/ll_container"
    android:layout_height="wrap_content"
    android:layout_margin="5dp"
    android:background="?attr/selectableItemBackground"
    android:orientation="vertical"
    android:paddingBottom="5dp">

    <ImageView
        android:id="@+id/iv_image"
        android:layout_width="match_parent"
        android:layout_height="200sp"
        android:scaleType="centerCrop"
        android:src="@mipmap/ic_launcher" />

    <TextView
        android:id="@+id/tv_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="10sp"
        android:layout_marginRight="5dp"
        android:layout_marginBottom="10dp"
        android:padding="5dp"
        android:text="Title kodetr"
        android:textSize="15sp"
        android:textStyle="bold"
        android:typeface="serif" />

    <TextView
        android:id="@+id/tv_desc"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:text="hello kodetr my name is mobile"
        android:textSize="13sp"
        android:typeface="serif" />
</LinearLayout>

Selanjutnya buat design layout dengan nama activity_main.xml, bagian design tersebut ada komponen Recyclerview sebagai menampilkan data berupa dalam bentuk list dan komponen FloatingActionButton sebagai button untuk menambahkan ada.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/rv_mynotes"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:layout_margin="10dp"
        android:clickable="true"
        app:srcCompat="@drawable/ic_add_black_24dp"
        tools:ignore="VectorDrawableCompat" />

</RelativeLayout>

Terakhir anda buat design layout dengan nama activity_input.xml, digunakan sebagai tampilan untuk proses input data berupa image, title dan description

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:layout_margin="20dp"
    android:gravity="center"
    android:orientation="vertical"
    tools:context=".InputActivity">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textStyle="bold"
        android:textSize="25sp"
        android:padding="25dp"
        android:text="ADD MY NOTES"/>

    <EditText
        android:id="@+id/et_image"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Image URL" />

    <EditText
        android:id="@+id/et_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:hint="Title" />

    <EditText
        android:id="@+id/et_desc"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:hint="Description" />

    <Button
        android:id="@+id/btn_simpan"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:background="@color/colorPrimary"
        android:text="SIMPAN"
        android:textColor="@android:color/white" />

</LinearLayout>

Jika anda sudah mengikuti artikel ini sesuai intruksi dari vidio maka anda berhasil membuat aplikasi SQLite CRUDS dengan Penerapan pada Arsitektur MVP.

Demikian yang dapat saya sampaikan dari artikel ini semoga bermanfaat, jika ada yang ditanyakan silahkan di kolom komentar dibawah, selamat mencoba.

Share Comments
comments powered by Disqus