Kamis, 15 Juni 2017

Cara Membuat CRUD pada Android

Sebelumnya mungkin ada yang sudah buat CRUD java dengan Database mysql , nah saya akan membuat aplikasi CRUD ( Create ,Read ,Update, dan Delete ) juga tetapi dengan Android Studio yang berbasis mobile dengan database SQLite , di sini saya menggunakan Android Studio 2.1.2 , oke mulai saja .
  1. Buka Android Studio
  2. Buat Projek Baru
  3. Berinama Projek yang akan kita buat
  4. kita harus menentukan Target Android Device nya , saya pilih API 15.
  5. Pilih Empty Activity
  6. Selanjutnya pada bagian Customize The Activity biarkan saja default
  7. Setelah ke 6 langkah tadi selesai kita buat DataHelper.java ,DataHelper.java ini adalah proses pembuatan Database SQLiteSimpan dengan Nama DataHelper.java
    import android.content.Context;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteOpenHelper;
    import android.util.Log;
    
    public class DataHelper extends SQLiteOpenHelper {
    
        private static final String DATABASE_NAME = "biodatadiri.db";
        private static final int DATABASE_VERSION = 1;
        public DataHelper(Context context) {
            super(context, DATABASE_NAME, null, DATABASE_VERSION);
            // TODO Auto-generated constructor stub
        }
        @Override
        public void onCreate(SQLiteDatabase db) {
            // TODO Auto-generated method stub
            String sql = "create table biodata(no integer primary key, nama text null, tgl text null, jk text null, alamat text null);";
            Log.d("Data", "onCreate: " + sql);
            db.execSQL(sql);
            sql = "INSERT INTO biodata (no, nama, tgl, jk, alamat) VALUES ('1', 'Darsiwan', '1996-07-12', 'Laki-laki','Indramayu');";
            db.execSQL(sql);
        }
        @Override
        public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
            // TODO Auto-generated method stub
        }
    }
  8. Kita buat layout xml pada activity_main.xml activity_main.xml
    DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
    1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    2.                xmlns:tools="http://schemas.android.com/tools"
    3.                android:layout_width="match_parent"
    4.                android:layout_height="match_parent"
    5.                android:paddingBottom="@dimen/activity_vertical_margin"
    6.                android:paddingLeft="@dimen/activity_horizontal_margin"
    7.                android:paddingRight="@dimen/activity_horizontal_margin"
    8.                android:paddingTop="@dimen/activity_vertical_margin"
    9.                android:background="#ecf0f1"
    10.                tools:context=".MainActivity" >
    11.     <ListView
    12.        android:id="@+id/listView1"
    13.        android:layout_width="match_parent"
    14.        android:layout_height="wrap_content"
    15.        android:layout_alignParentTop="true"
    16.        android:layout_alignParentRight="true"
    17.        android:layout_alignParentEnd="true"
    18.        android:layout_above="@+id/button2">
    19.     </ListView>
    20.     <Button
    21.        android:id="@+id/button2"
    22.        android:layout_width="wrap_content"
    23.        android:layout_height="wrap_content"
    24.        style="?android:attr/borderlessButtonStyle"
    25.        android:drawableLeft="@drawable/icon_add"
    26.        android:text="Buat Biodata Baru"
    27.        android:layout_alignParentBottom="true"
    28.        android:layout_alignParentLeft="true"
    29.        android:layout_alignParentStart="true" />
    30. </RelativeLayout>
  9. kita tuliskan source di bawah pada MainActivity.java  
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.Menu;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemClickListener;
    import android.widget.ArrayAdapter;
    import android.widget.Button;
    import android.widget.ListView;
    
    public class MainActivity extends AppCompatActivity {
        String[] daftar;
        ListView ListView01;
        Menu menu;
        protected Cursor cursor;
        DataHelper dbcenter;
        public static MainActivity ma;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            Button btn=(Button)findViewById(R.id.button2);
    
            btn.setOnClickListener(new View.OnClickListener() {
    
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    Intent inte = new Intent(MainActivity.this, BuatBiodata.class);
                    startActivity(inte);
                }
            });
    
    
            ma = this;
            dbcenter = new DataHelper(this);
            RefreshList();
        }
    
        public void RefreshList(){
            SQLiteDatabase db = dbcenter.getReadableDatabase();
            cursor = db.rawQuery("SELECT * FROM biodata",null);
            daftar = new String[cursor.getCount()];
            cursor.moveToFirst();
            for (int cc=0; cc < cursor.getCount(); cc++){
                cursor.moveToPosition(cc);
                daftar[cc] = cursor.getString(1).toString();
            }
            ListView01 = (ListView)findViewById(R.id.listView1);
            ListView01.setAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_1, daftar));
            ListView01.setSelected(true);
            ListView01.setOnItemClickListener(new OnItemClickListener() {
    
    
                public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) {
                    final String selection = daftar[arg2]; //.getItemAtPosition(arg2).toString();
                    final CharSequence[] dialogitem = {"Lihat Biodata", "Update Biodata", "Hapus Biodata"};
                    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                    builder.setTitle("Pilihan");
                    builder.setItems(dialogitem, new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int item) {
                            switch(item){
                                case 0 :
                                    Intent i = new Intent(getApplicationContext(), LihatBiodata.class);
                                    i.putExtra("nama", selection);
                                    startActivity(i);
                                    break;
                                case 1 :
                                    Intent in = new Intent(getApplicationContext(), UpdateBiodata.class);
                                    in.putExtra("nama", selection);
                                    startActivity(in);
                                    break;
                                case 2 :
                                    SQLiteDatabase db = dbcenter.getWritableDatabase();
                                    db.execSQL("delete from biodata where nama = '"+selection+"'");
                                    RefreshList();
                                    break;
                            }
                        }
                    });
                    builder.create().show();
                }});
            ((ArrayAdapter)ListView01.getAdapter()).notifyDataSetInvalidated();
        }
    
    }
  10. Buat 3 Empty Activity baruscreenshot (1)Berinama Layout Name sebagai berikut : 1.activity_buat_biodata.xml 2.activity_lihat_biodata.xml 3.activity_update_biodata.xml
    Dan Activity Name :
    1.BuatBiodata.java 2.LihatBiodata.java 3.UpdateBiodata.java
  11. Setelah ke 3 Activity tadi di buat tuliskan pada layout xml dengan nama masing masing : 1.activity_buat_biodata.xml
    DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
    1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    2.                xmlns:tools="http://schemas.android.com/tools"
    3.                android:layout_width="match_parent"
    4.                android:layout_height="match_parent"
    5.                android:paddingBottom="@dimen/activity_vertical_margin"
    6.                android:paddingLeft="@dimen/activity_horizontal_margin"
    7.                android:paddingRight="@dimen/activity_horizontal_margin"
    8.                android:paddingTop="@dimen/activity_vertical_margin"
    9.                tools:context=".BuatBiodata" >
    10.  
    11.     <EditText
    12.        android:id="@+id/editText1"
    13.        android:layout_width="match_parent"
    14.        android:layout_height="wrap_content"
    15.        android:layout_alignLeft="@+id/textView1"
    16.        android:layout_below="@+id/textView1"
    17.        android:inputType="number"
    18.        android:maxLength="10">
    19.  
    20.         <requestFocus />
    21.     </EditText>
    22.  
    23.     <TextView
    24.        android:id="@+id/textView1"
    25.        android:layout_width="wrap_content"
    26.        android:layout_height="wrap_content"
    27.        android:layout_alignParentLeft="true"
    28.        android:layout_alignParentTop="true"
    29.        android:text="Nomor" />
    30.  
    31.     <TextView
    32.        android:id="@+id/textView2"
    33.        android:layout_width="wrap_content"
    34.        android:layout_height="wrap_content"
    35.        android:layout_alignLeft="@+id/editText1"
    36.        android:layout_below="@+id/editText1"
    37.        android:layout_marginTop="10dp"
    38.        android:text="Nama" />
    39.  
    40.     <EditText
    41.        android:id="@+id/editText2"
    42.        android:layout_width="match_parent"
    43.        android:layout_height="wrap_content"
    44.        android:layout_alignLeft="@+id/textView2"
    45.        android:layout_below="@+id/textView2"
    46.        android:inputType="text"
    47.        android:maxLength="20"/>
    48.  
    49.     <TextView
    50.        android:id="@+id/textView3"
    51.        android:layout_width="wrap_content"
    52.        android:layout_height="wrap_content"
    53.        android:layout_alignLeft="@+id/editText2"
    54.        android:layout_below="@+id/editText2"
    55.        android:layout_marginTop="10dp"
    56.        android:text="Tanggal Lahir" />
    57.  
    58.     <EditText
    59.        android:id="@+id/editText3"
    60.        android:layout_width="match_parent"
    61.        android:layout_height="wrap_content"
    62.        android:layout_alignLeft="@+id/textView3"
    63.        android:layout_below="@+id/textView3"
    64.        android:inputType="date"/>
    65.  
    66.     <TextView
    67.        android:id="@+id/textView4"
    68.        android:layout_width="wrap_content"
    69.        android:layout_height="wrap_content"
    70.        android:layout_alignLeft="@+id/editText3"
    71.        android:layout_below="@+id/editText3"
    72.        android:layout_marginTop="10dp"
    73.        android:text="Jenis Kelamin" />
    74.  
    75.     <EditText
    76.        android:id="@+id/editText4"
    77.        android:layout_width="match_parent"
    78.        android:layout_height="wrap_content"
    79.        android:layout_alignLeft="@+id/textView4"
    80.        android:layout_below="@+id/textView4"
    81.        android:inputType="text"
    82.        android:maxLength="1"
    83.        android:hint="L atau P"/>
    84.  
    85.     <TextView
    86.        android:id="@+id/textView5"
    87.        android:layout_width="wrap_content"
    88.        android:layout_height="wrap_content"
    89.        android:layout_alignLeft="@+id/editText4"
    90.        android:layout_below="@+id/editText4"
    91.        android:layout_marginTop="10dp"
    92.        android:text="Alamat" />
    93.  
    94.     <EditText
    95.        android:id="@+id/editText5"
    96.        android:layout_width="match_parent"
    97.        android:layout_height="wrap_content"
    98.        android:layout_alignLeft="@+id/textView5"
    99.        android:layout_below="@+id/textView5"
    100.        android:maxLength="100"
    101.        android:inputType="text"/>
    102.  
    103.     <Button
    104.        android:id="@+id/button1"
    105.        android:layout_width="wrap_content"
    106.        android:layout_height="wrap_content"
    107.        android:layout_alignLeft="@+id/editText5"
    108.        android:layout_alignParentBottom="true"
    109.        style="?android:attr/borderlessButtonStyle"
    110.        android:drawableLeft="@drawable/ic_done"
    111.        android:text="Simpan" />
    112.  
    113.     <Button
    114.        android:id="@+id/button2"
    115.        android:layout_width="wrap_content"
    116.        android:layout_height="wrap_content"
    117.        android:text="Kembali"
    118.        style="?android:attr/borderlessButtonStyle"
    119.        android:drawableLeft="@drawable/ic_arrow"
    120.        android:layout_alignParentBottom="true"
    121.        android:layout_alignRight="@+id/editText5"
    122.        android:layout_alignEnd="@+id/editText5" />
    123.  
    124. </RelativeLayout>
    2.activity_lihat_biodata.xml
    DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
    1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    2.                xmlns:tools="http://schemas.android.com/tools"
    3.                android:layout_width="match_parent"
    4.                android:layout_height="match_parent"
    5.                android:paddingBottom="@dimen/activity_vertical_margin"
    6.                android:paddingLeft="@dimen/activity_horizontal_margin"
    7.                android:paddingRight="@dimen/activity_horizontal_margin"
    8.                android:paddingTop="@dimen/activity_vertical_margin"
    9.                tools:context=".LihatBiodata" >
    10.  
    11.     <TextView
    12.        android:id="@+id/textView1"
    13.        android:layout_width="wrap_content"
    14.        android:layout_height="wrap_content"
    15.        android:layout_alignParentRight="true"
    16.        android:layout_alignParentTop="true"
    17.        android:layout_marginRight="104dp"
    18.        android:layout_marginTop="20dp"
    19.        android:text="TextView" />
    20.  
    21.     <TextView
    22.        android:id="@+id/textView2"
    23.        android:layout_width="wrap_content"
    24.        android:layout_height="wrap_content"
    25.        android:layout_alignRight="@+id/textView1"
    26.        android:layout_below="@+id/textView1"
    27.        android:layout_marginTop="20dp"
    28.        android:text="TextView" />
    29.  
    30.     <TextView
    31.        android:id="@+id/textView3"
    32.        android:layout_width="wrap_content"
    33.        android:layout_height="wrap_content"
    34.        android:layout_alignLeft="@+id/textView2"
    35.        android:layout_below="@+id/textView2"
    36.        android:layout_marginTop="20dp"
    37.        android:text="TextView" />
    38.  
    39.     <TextView
    40.        android:id="@+id/textView4"
    41.        android:layout_width="wrap_content"
    42.        android:layout_height="wrap_content"
    43.        android:layout_alignLeft="@+id/textView3"
    44.        android:layout_below="@+id/textView3"
    45.        android:layout_marginTop="20dp"
    46.        android:text="TextView" />
    47.  
    48.     <TextView
    49.        android:id="@+id/textView5"
    50.        android:layout_width="wrap_content"
    51.        android:layout_height="wrap_content"
    52.        android:layout_alignRight="@+id/textView4"
    53.        android:layout_below="@+id/textView4"
    54.        android:layout_marginTop="20dp"
    55.        android:text="TextView" />
    56.  
    57.     <TextView
    58.        android:id="@+id/TextView05"
    59.        android:layout_width="wrap_content"
    60.        android:layout_height="wrap_content"
    61.        android:layout_alignBaseline="@+id/textView5"
    62.        android:layout_alignBottom="@+id/textView5"
    63.        android:layout_alignLeft="@+id/TextView03"
    64.        android:text="Alamat" />
    65.  
    66.     <TextView
    67.        android:id="@+id/TextView03"
    68.        android:layout_width="wrap_content"
    69.        android:layout_height="wrap_content"
    70.        android:layout_alignBaseline="@+id/textView4"
    71.        android:layout_alignBottom="@+id/textView4"
    72.        android:layout_alignLeft="@+id/TextView04"
    73.        android:text="Jenis Kelamin" />
    74.  
    75.     <TextView
    76.        android:id="@+id/TextView04"
    77.        android:layout_width="wrap_content"
    78.        android:layout_height="wrap_content"
    79.        android:layout_alignBaseline="@+id/textView3"
    80.        android:layout_alignBottom="@+id/textView3"
    81.        android:layout_alignLeft="@+id/TextView02"
    82.        android:text="Tanggal Lahir" />
    83.  
    84.     <TextView
    85.        android:id="@+id/TextView02"
    86.        android:layout_width="wrap_content"
    87.        android:layout_height="wrap_content"
    88.        android:layout_alignBaseline="@+id/textView2"
    89.        android:layout_alignBottom="@+id/textView2"
    90.        android:layout_alignLeft="@+id/TextView01"
    91.        android:text="Nama" />
    92.  
    93.     <TextView
    94.        android:id="@+id/TextView01"
    95.        android:layout_width="wrap_content"
    96.        android:layout_height="wrap_content"
    97.        android:layout_above="@+id/textView2"
    98.        android:layout_alignParentLeft="true"
    99.        android:text="Nomor" />
    100.  
    101.     <Button
    102.        android:id="@+id/button1"
    103.        android:layout_width="wrap_content"
    104.        android:layout_height="wrap_content"
    105.        android:layout_alignLeft="@+id/TextView05"
    106.        android:layout_below="@+id/TextView05"
    107.        android:layout_marginTop="34dp"
    108.        android:text="Kembali"
    109.        style="?android:attr/borderlessButtonStyle"
    110.        android:drawableLeft="@drawable/ic_arrow"/>
    111.  
    112. </RelativeLayout>
    3.activity_update_biodata.xml
    DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
    1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    2.                xmlns:tools="http://schemas.android.com/tools"
    3.                android:layout_width="match_parent"
    4.                android:layout_height="match_parent"
    5.                android:paddingBottom="@dimen/activity_vertical_margin"
    6.                android:paddingLeft="@dimen/activity_horizontal_margin"
    7.                android:paddingRight="@dimen/activity_horizontal_margin"
    8.                android:paddingTop="@dimen/activity_vertical_margin"
    9.                tools:context=".UpdateBiodata" >
    10.  
    11.     <EditText
    12.        android:id="@+id/editText1"
    13.        android:layout_width="match_parent"
    14.        android:layout_height="wrap_content"
    15.        android:layout_alignLeft="@+id/textView1"
    16.        android:layout_below="@+id/textView1"
    17.        android:inputType="number"
    18.        android:maxLength="10">
    19.  
    20.         <requestFocus />
    21.     </EditText>
    22.  
    23.     <TextView
    24.        android:id="@+id/textView1"
    25.        android:layout_width="wrap_content"
    26.        android:layout_height="wrap_content"
    27.        android:layout_alignParentLeft="true"
    28.        android:layout_alignParentTop="true"
    29.        android:text="Nomor" />
    30.  
    31.     <TextView
    32.        android:id="@+id/textView2"
    33.        android:layout_width="wrap_content"
    34.        android:layout_height="wrap_content"
    35.        android:layout_alignLeft="@+id/editText1"
    36.        android:layout_below="@+id/editText1"
    37.        android:layout_marginTop="10dp"
    38.        android:text="Nama" />
    39.  
    40.     <EditText
    41.        android:id="@+id/editText2"
    42.        android:layout_width="match_parent"
    43.        android:layout_height="wrap_content"
    44.        android:layout_alignLeft="@+id/textView2"
    45.        android:layout_below="@+id/textView2"
    46.        android:inputType="text"
    47.        android:maxLength="20"/>
    48.  
    49.     <TextView
    50.        android:id="@+id/textView3"
    51.        android:layout_width="wrap_content"
    52.        android:layout_height="wrap_content"
    53.        android:layout_alignLeft="@+id/editText2"
    54.        android:layout_below="@+id/editText2"
    55.        android:layout_marginTop="10dp"
    56.        android:text="Tanggal Lahir" />
    57.  
    58.     <EditText
    59.        android:id="@+id/editText3"
    60.        android:layout_width="match_parent"
    61.        android:layout_height="wrap_content"
    62.        android:layout_alignLeft="@+id/textView3"
    63.        android:layout_below="@+id/textView3"
    64.        android:inputType="date"/>
    65.  
    66.     <TextView
    67.        android:id="@+id/textView4"
    68.        android:layout_width="wrap_content"
    69.        android:layout_height="wrap_content"
    70.        android:layout_alignLeft="@+id/editText3"
    71.        android:layout_below="@+id/editText3"
    72.        android:layout_marginTop="10dp"
    73.        android:text="Jenis Kelamin" />
    74.  
    75.     <EditText
    76.        android:id="@+id/editText4"
    77.        android:layout_width="match_parent"
    78.        android:layout_height="wrap_content"
    79.        android:layout_alignLeft="@+id/textView4"
    80.        android:layout_below="@+id/textView4"
    81.        android:inputType="text"
    82.        android:maxLength="1"
    83.        android:hint="L atau P"/>
    84.  
    85.     <TextView
    86.        android:id="@+id/textView5"
    87.        android:layout_width="wrap_content"
    88.        android:layout_height="wrap_content"
    89.        android:layout_alignLeft="@+id/editText4"
    90.        android:layout_below="@+id/editText4"
    91.        android:layout_marginTop="10dp"
    92.        android:text="Alamat"
    93.        android:inputType="text"
    94.        android:maxLength="100"/>
    95.  
    96.     <EditText
    97.        android:id="@+id/editText5"
    98.        android:layout_width="match_parent"
    99.        android:layout_height="wrap_content"
    100.        android:layout_alignLeft="@+id/textView5"
    101.        android:layout_below="@+id/textView5" />
    102.  
    103.     <Button
    104.        android:id="@+id/button1"
    105.        android:layout_width="wrap_content"
    106.        android:layout_height="wrap_content"
    107.        android:layout_alignLeft="@+id/editText5"
    108.        android:layout_alignParentBottom="true"
    109.        style="?android:attr/borderlessButtonStyle"
    110.        android:drawableLeft="@drawable/ic_done"
    111.        android:text="Update" />
    112.  
    113.     <Button
    114.        android:id="@+id/button2"
    115.        android:layout_width="wrap_content"
    116.        android:layout_height="wrap_content"
    117.        android:text="Kembali"
    118.        style="?android:attr/borderlessButtonStyle"
    119.        android:drawableLeft="@drawable/ic_arrow"
    120.        android:layout_alignParentBottom="true"
    121.        android:layout_alignRight="@+id/editText5"
    122.        android:layout_alignEnd="@+id/editText5"
    123.        />
    124.  
    125. </RelativeLayout>
  12. Tuliskan baris kode java class di bawah dengan nama masing-masing : 1.BuatBiodata.java
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Toast;
    
    public class BuatBiodata extends AppCompatActivity {
        protected Cursor cursor;
        DataHelper dbHelper;
        Button ton1, ton2;
        EditText text1, text2, text3, text4, text5;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_buat_biodata);
    
            dbHelper = new DataHelper(this);
            text1 = (EditText) findViewById(R.id.editText1);
            text2 = (EditText) findViewById(R.id.editText2);
            text3 = (EditText) findViewById(R.id.editText3);
            text4 = (EditText) findViewById(R.id.editText4);
            text5 = (EditText) findViewById(R.id.editText5);
            ton1 = (Button) findViewById(R.id.button1);
            ton2 = (Button) findViewById(R.id.button2);
    
            ton1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    SQLiteDatabase db = dbHelper.getWritableDatabase();
                    db.execSQL("insert into biodata(no, nama, tgl, jk, alamat) values('" +
                            text1.getText().toString() + "','" +
                            text2.getText().toString() + "','" +
                            text3.getText().toString() + "','" +
                            text4.getText().toString() + "','" +
                            text5.getText().toString() + "')");
                    Toast.makeText(getApplicationContext(), "Berhasil", Toast.LENGTH_LONG).show();
                    MainActivity.ma.RefreshList();
                    finish();
                }
            });
            ton2.setOnClickListener(new View.OnClickListener() {
    
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    finish();
                }
            });
        }
    
    }
    2.LihatBiodata.java
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
    
    public class LihatBiodata extends AppCompatActivity {
        protected Cursor cursor;
        DataHelper dbHelper;
        Button ton2;
        TextView text1, text2, text3, text4, text5;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_lihat_biodata);
    
            dbHelper = new DataHelper(this);
            text1 = (TextView) findViewById(R.id.textView1);
            text2 = (TextView) findViewById(R.id.textView2);
            text3 = (TextView) findViewById(R.id.textView3);
            text4 = (TextView) findViewById(R.id.textView4);
            text5 = (TextView) findViewById(R.id.textView5);
            SQLiteDatabase db = dbHelper.getReadableDatabase();
            cursor = db.rawQuery("SELECT * FROM biodata WHERE nama = '" +
                    getIntent().getStringExtra("nama") + "'",null);
            cursor.moveToFirst();
            if (cursor.getCount()>0)
            {
                cursor.moveToPosition(0);
                text1.setText(cursor.getString(0).toString());
                text2.setText(cursor.getString(1).toString());
                text3.setText(cursor.getString(2).toString());
                text4.setText(cursor.getString(3).toString());
                text5.setText(cursor.getString(4).toString());
            }
            ton2 = (Button) findViewById(R.id.button1);
            ton2.setOnClickListener(new View.OnClickListener() {
    
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    finish();
                }
            });
        }
    
    }
    3.UpdateBiodata.java
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Toast;
    
    public class UpdateBiodata extends AppCompatActivity {
        protected Cursor cursor;
        DataHelper dbHelper;
        Button ton1, ton2;
        EditText text1, text2, text3, text4, text5;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_update_biodata);
    
            dbHelper = new DataHelper(this);
            text1 = (EditText) findViewById(R.id.editText1);
            text2 = (EditText) findViewById(R.id.editText2);
            text3 = (EditText) findViewById(R.id.editText3);
            text4 = (EditText) findViewById(R.id.editText4);
            text5 = (EditText) findViewById(R.id.editText5);
            SQLiteDatabase db = dbHelper.getReadableDatabase();
            cursor = db.rawQuery("SELECT * FROM biodata WHERE nama = '" +
                    getIntent().getStringExtra("nama") + "'",null);
            cursor.moveToFirst();
            if (cursor.getCount()>0)
            {
                cursor.moveToPosition(0);
                text1.setText(cursor.getString(0).toString());
                text2.setText(cursor.getString(1).toString());
                text3.setText(cursor.getString(2).toString());
                text4.setText(cursor.getString(3).toString());
                text5.setText(cursor.getString(4).toString());
            }
            ton1 = (Button) findViewById(R.id.button1);
            ton2 = (Button) findViewById(R.id.button2);
            // daftarkan even onClick pada btnSimpan
            ton1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    SQLiteDatabase db = dbHelper.getWritableDatabase();
                    db.execSQL("update biodata set nama='"+
                            text2.getText().toString() +"', tgl='" +
                            text3.getText().toString()+"', jk='"+
                            text4.getText().toString() +"', alamat='" +
                            text5.getText().toString() + "' where no='" +
                            text1.getText().toString()+"'");
                    Toast.makeText(getApplicationContext(), "Berhasil", Toast.LENGTH_LONG).show();
                    MainActivity.ma.RefreshList();
                    finish();
                }
            });
            ton2.setOnClickListener(new View.OnClickListener() {
    
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    finish();
                }
            });
        }
    
    }

    Lanjutan..

  13. Tambahan : edit manifest/AndroidManifest.xml
    DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    3.    package="com.example.darsiwan.crudsqliite">
    4.  
    5.     <application
    6.        android:allowBackup="true"
    7.        android:icon="@mipmap/logo"
    8.        android:label="@string/app_name"
    9.        android:supportsRtl="true"
    10.        android:theme="@style/AppTheme">
    11.         <activity android:name=".MainActivity">
    12.             <intent-filter>
    13.                 <action android:name="android.intent.action.MAIN" />
    14.  
    15.                 <category android:name="android.intent.category.LAUNCHER" />
    16.             </intent-filter>
    17.         </activity>
    18.     <activity android:name=".BuatBiodata"
    19.        android:label="@string/title_activity_buatbiodata">
    20.     </activity>
    21.     <activity android:name=".LihatBiodata"
    22.        android:label="@string/title_activity_lihatbiodata">
    23.     </activity>
    24.     <activity android:name=".UpdateBiodata"
    25.        android:label="@string/title_activity_updatebiodata">
    26.     </activity>
    27.     </application>
    28.  
    29. </manifest>
    edit res/values/color.xml
    DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <resources>
    3.     <color name="colorPrimary">#3F51B5</color>
    4.     <color name="colorPrimaryDark">#303F9F</color>
    5.     <color name="colorAccent">#000</color>
    6. </resources>
    Terakhir edit res/values/styles.xml
    DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <resources>
    3.     <color name="colorPrimary">#3F51B5</color>
    4.     <color name="colorPrimaryDark">#303F9F</color>
    5.     <color name="colorAccent">#000</color>
    6. </resources>

0 komentar:

Posting Komentar