Cara Membuat Aplikasi CRUD Dengan Android Studio (Java) Part 5 - Delete Data

Cara Membuat Aplikasi CRUD Dengan Android Studio (Java) Part 1 - Persiapan

Pada kesempatan kali ini saya akan melanjutkan tutorial tentang cara membuat aplikasi CRUD dengan Android Studio (Java). Di-part 5 ini saya akan memberikan cara delete data di aplikasi CRUD.

Tahap Pembuatan

  • Untuk langkah pertamanya silakan dibuka kembali project yang sudah dibuatnya.
  • Setelah itu tambahkan method berikut di dalam class "DBDataSource" yang berada di package controller.
  • public void deleteData(long bookId) {
         String[] args = {"" + bookId};
         database.delete(DBHelper.tableName, DBHelper.columnId + "=?", args);
    }

  • Kemudian buat package delete di dalam package view.
  • Setelah itu buat class "DeleteData" di dalam package delete, dengan isian berikut.
  • package com.herdaynote.simplecrud.view.delete;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.Intent;
    import android.os.Bundle;
    import android.widget.ArrayAdapter;
    import android.widget.ListView;
    import android.widget.Toast;
    import com.herdaynote.simplecrud.R;
    import com.herdaynote.simplecrud.controller.DBDataSource;
    import com.herdaynote.simplecrud.model.Book;
    import com.herdaynote.simplecrud.view.update.UpdateData;
    import java.util.ArrayList;
    
    public class DeleteData extends Activity {
        private DBDataSource dataSource;
        private ArrayList<Book> values;
        private ListView listView;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.delete_data);
    
            dataSource = new DBDataSource(this);
            dataSource.open();
    
            values = dataSource.readData();
            ArrayAdapter<Book> adapter = new ArrayAdapter<>(this,
                    android.R.layout.simple_list_item_1, values
            );
    
            listView = findViewById(R.id.listBook);
            listView.setAdapter(adapter);
            listView.setOnItemClickListener(
                    (parent, v, position, id) -> {
                        Book book = values.get(position);
    
                        AlertDialog.Builder dialog = new AlertDialog.Builder(DeleteData.this);
                        dialog.setMessage("Do you want to delete this data?")
                                .setCancelable(false)
                                .setPositiveButton("Yes", (dialog1, which) -> {
                                    dataSource.deleteData(book.getBookId());
                                    Toast.makeText(DeleteData.this, "Data deleted successfully!", Toast.LENGTH_SHORT).show();
                                    DeleteData.this.recreate();
                                }).setNegativeButton("No", (dialog12, which) -> dialog12.cancel());
    
                        AlertDialog alertDialog = dialog.create();
                        alertDialog.show();
                    }
            );
        }
    
        @Override
        protected void onResume() {
            super.onResume();
            this.onCreate(null);
        }
    }

  • Kemudian buat layout baru "delete_data.xml", dengan isian berikut.
  • <?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:tools="http://schemas.android.com/tools"
        tools:context=".view.delete.DeleteData">
        <TextView
            android:id="@+id/title_app"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/deleteText"
            android:gravity="center_horizontal"
            android:textSize="42sp"
            android:layout_margin="20dp"/>
        <ListView
            android:id="@+id/listBook"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@id/title_app"/>
    
    </RelativeLayout>

  • Setelah itu ubah tag comment "// start delete activity" yang ada di dalam class "MainActivity" yang berada di package view, dengan isian berikut.
  • Intent i4 = new Intent(this, DeleteData.class);
    startActivity(i4);

  • Lalu tambahkan kode berikut di dalam tag "application" yang berada di "AndroidManifest.xml".
  • <activity android:name=".view.delete.DeleteData"/>

Tutorial Video

Source Code : Github

4or Education

4or Education hadir sebagai blog edukasi yang menemanimu menjelajahi samudra ilmu pengetahuan dan teknologi. Di sini, kamu akan menemukan berbagai artikel menarik dan informatif seputar : Pengetahuan, Pendidikan, Teknologi, dan Lain-lain.

Posting Komentar

Lebih baru Lebih lama