Contoh Aplikasi Kamus Android

14
Contoh Aplikasi Kamus Android Pada post kali ini saya akan membahasa bagaimana membuat Aplikasi Kamus Android. Sebelum terjun dalam pembuatan aplikasinya di eclipse, kita akan membuat sebuah database sqlite dulu, yang berisi data untuk kamus kita, dalam project ini saya akan membuat kamus sederhana tentang komputer, jadi data yang ada berupa istilah2 dalam komputer, misal processor, maka akan ada deskripsi processor itu apa. Feature Aplikasi ini ~ Search data (wajib jika anda membuat aplikasi kamus) ~ Database on asset (database berada pada folder asset, tidak generate data pada class tersendiri) ~ next by request :D Untuk membuat database sqlite saya menggunakan add ons pada Firefox yang bernama SQLite Manager Kemudian selanjutnya buatlah sebuah database.. pada contoh kali ini saya beri nama db_kamus_komputer, lalu pilih tempat penyimpanan, kemudian buatlah sebuah table baru.. dengan column2 sebagai berikut

description

Membuat kamus sederhana berbasis android

Transcript of Contoh Aplikasi Kamus Android

Page 1: Contoh Aplikasi Kamus Android

Contoh Aplikasi Kamus Android

Pada post kali ini saya akan membahasa bagaimana membuat Aplikasi Kamus Android.

Sebelum terjun dalam pembuatan aplikasinya di eclipse, kita akan membuat sebuah database

sqlite dulu, yang berisi data untuk kamus kita, dalam project ini saya akan membuat kamus

sederhana tentang komputer, jadi data yang ada berupa istilah2 dalam komputer, misal

processor, maka akan ada deskripsi processor itu apa.

Feature Aplikasi ini

~ Search data (wajib jika anda membuat aplikasi kamus)

~ Database on asset (database berada pada folder asset, tidak generate data pada class

tersendiri)

~ next by request :D

Untuk membuat database sqlite saya menggunakan add ons pada Firefox yang bernama

SQLite Manager

Kemudian selanjutnya buatlah sebuah database..

pada contoh kali ini saya beri nama db_kamus_komputer, lalu pilih tempat penyimpanan,

kemudian buatlah sebuah table baru..

dengan column2 sebagai berikut

Page 2: Contoh Aplikasi Kamus Android

kemudian coba isikan data,,

kemudian coba tutup SQLite Manager kamu, kemudian coba buka ulang kembali database

yang baru saja kita buat, untuk mengecek apakah data yang kita inputkan tadi kesimpan atau

tidak

Selanjutnya buat project android baru..

Page 4: Contoh Aplikasi Kamus Android

yang bernama sqliteassethelper

Download as zip, kemudian extrack maka kamu akan menemukan file jar berada pada folder

lib

kemudian copykan file .jar tersebut kedalam folder libs project kamu

Selanjutnya masuk ke properties project kamu, kemudian pilih java build path, lalu tab

libraries, kemudian add jar,

tambahkan file jar yang ada pada folder libs tadi..

Page 5: Contoh Aplikasi Kamus Android

Selanjutnya adalah sisi codingnya.. :)

Pertama kita akan membuat class entity untuk kamus kita.. saya beri nama Kamus.java, entity

ini berisi field yang ada pada database..

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

package id.pratamawijaya.kamuskomputer; public class Kamus { private String istilah; private String arti;

public String getIstilah() { return istilah; } public void setIstilah(String istilah) { this.istilah = istilah; } public String getArti() { return arti; }

public void setArti(String arti) { this.arti = arti; } @Override public String toString() { return this.istilah; } }

selanjutnya adalah class untuk helper untuk SQLite Databasenya.. saya beri nama

DatabaseHelper.java

yang perlu anda perhatikan disini adalah pada variable DB_NAME, isi variable ini harus

nama database yang ada pada folder asset anda.. pada contoh ini saya sebelumnya membuat

sebuah database sqlite dengan nama db_kamus_helper, maka pada variable DB_NAME

akan saya isi db_kamus_helper, oke paham kan..?

Page 6: Contoh Aplikasi Kamus Android

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

package id.pratamawijaya.kamuskomputer; import java.util.ArrayList; import java.util.List;

import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.text.TextUtils; import com.readystatesoftware.sqliteasset.SQLiteAssetHelper;

public class DatabaseHelper extends SQLiteAssetHelper { private static final String DB_NAME = "db_kamus_komputer";

private static final int DB_VER = 1;

private static final String TB_DATA = "tb_data"; public static final String COL_ID = "_id"; public static final String COL_ISTILAH = "istilah"; public static final String COL_ARTI = "arti"; private static DatabaseHelper dbInstance; private static SQLiteDatabase db;

private DatabaseHelper(Context context) { super(context, DB_NAME, null, DB_VER); } public static DatabaseHelper getInstance(Context context) { if (dbInstance == null) { dbInstance = new DatabaseHelper(context); db = dbInstance.getWritableDatabase(); } return dbInstance; } @Override public synchronized void close() { super.close(); if (dbInstance != null) { dbInstance.close(); } }

public List<kamus> getAllKamus() { List<kamus> lisKamus = new ArrayList<kamus>();

Cursor cursor = db.query(TB_DATA, new String[] { COL_ID, COL_ID, COL_ARTI, COL_ISTILAH }, null, null, null, null, COL_ISTILAH); if (cursor.getCount() >= 1)

Page 7: Contoh Aplikasi Kamus Android

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

{ cursor.moveToFirst();

do { Kamus kamus = new Kamus(); kamus.setArti(cursor.getString(cursor .getColumnIndexOrThrow(COL_ARTI))); kamus.setIstilah(cursor.getString(cursor .getColumnIndexOrThrow(COL_ISTILAH))); lisKamus.add(kamus); } while (cursor.moveToNext()); } return lisKamus; } } </kamus></kamus></kamus>

selanjutnya silahkan ubah tampilan layout utama anda,, activity_main.xml menjadi sebagai

berikut

?

1

2

3

4

5

6

7

8

9

10

<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" tools:context=".MainActivity">

<edittext android:id="@+id/search" android:layout_width="match_parent" android:layout_height="wrap_content" android:drawableright="@android:drawable/ic_search_category_default" android:hint="Search..."> <listview android:id="@+id/lv_data" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@id/search"> </listview>

<textview android:id="@+id/empty" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/lv_data" android:layout_marginleft="20dp" android:text="Data yang anda cari tidak ada">

Page 8: Contoh Aplikasi Kamus Android

</textview></edittext></relativelayout>

lalu buat lagi sebuah activity baru yakni ArtiActivity.java yang memiliki kode sebagai

berikut

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

package id.pratamawijaya.kamuskomputer;

import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.widget.TextView; public class ArtiActivity extends Activity { private TextView txtArti, txtIstilah; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_arti); txtArti = (TextView) findViewById(R.id.arti); txtIstilah = (TextView) findViewById(R.id.istilah); Bundle b = getIntent().getExtras(); if (b != null) { txtIstilah.setText(b.getString("istilah")); txtArti.setText(b.getString("arti")); } } }

dan untuk layout activity_arti.xml akan menjadi seperti berikut

?

1

2

3

4

5

6

7

8

9

<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:paddingbottom="@dimen/activity_vertical_margin" android:paddingleft="@dimen/activity_horizontal_margin" android:paddingright="@dimen/activity_horizontal_margin" android:paddingtop="@dimen/activity_vertical_margin" tools:context=".ArtiActivity"> <textview android:id="@+id/istilah" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="istilah"> <view android:id="@+id/garis" android:layout_width="match_parent" android:layout_height="1dp" android:layout_below="@id/istilah" android:layout_marginbottom="20dp" android:background="#000">

Page 9: Contoh Aplikasi Kamus Android

<textview android:id="@+id/arti" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/garis" android:text="arti"> </textview></view></textview></relativelayout>

dan terakhir dan yang paling penting adalah berada pada file MainActivity.java rubah

menjadi seperti dibawah ini

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

package id.pratamawijaya.kamuskomputer; import java.util.List; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.text.Editable; import android.text.TextWatcher; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.ListView;

public class MainActivity extends Activity implements TextWatcher, OnItemClickListener { private EditText search; private ListView lv; private DatabaseHelper dbHelper; private ArrayAdapter<kamus> adapter; private List<kamus> listKamus; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); lv = (ListView) findViewById(R.id.lv_data); lv.setEmptyView(findViewById(R.id.empty)); search = (EditText) findViewById(R.id.search); dbHelper = DatabaseHelper.getInstance(this);

setData(); search.addTextChangedListener(this); lv.setOnItemClickListener(this); } private void setData() { listKamus = dbHelper.getAllKamus(); adapter = new ArrayAdapter<kamus>(this,

Page 10: Contoh Aplikasi Kamus Android

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

android.R.layout.simple_expandable_list_item_1, listKamus); lv.setAdapter(adapter);

} @Override public void afterTextChanged(Editable arg0) { }

@Override public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { }

@Override public void onTextChanged(CharSequence s, int arg1, int arg2, int arg3) { adapter.getFilter().filter(s.toString()); }

@Override public void onItemClick(AdapterView<!--?--> arg0, View arg1, int position, long id) { // TODO Auto-generated method stub Bundle b = new Bundle(); b.putString("istilah", adapter.getItem(position).getIstilah()); b.putString("arti", adapter.getItem(position).getArti()); Intent i = new Intent(this, ArtiActivity.class); i.putExtras(b); startActivity(i);

} } </kamus></kamus></kamus>

program ini sudah dapat berjalan dengan baik.. semua data di database dapat terload dengan

Page 13: Contoh Aplikasi Kamus Android

untuk penambahan data kamus yang baru.. anda dapat menambahkan data kamus

menggunakan sqlite browser... buka file db_kamus_komputer.sqlite kemudian tambahkan

data yang ingin ditambahkan.. selanjutnya adalah zip file sqlite.. overwrite file yang ada pada

asset.. untuk menjalankan di device/emulator.. jangan lupa di Clear Data, kenapa harus

clear data, agar database pada apps diganti dengan database baru yang baru saja kita

tambahkan..

berikut screenshot setelah ditambah data

Page 14: Contoh Aplikasi Kamus Android

Note : berani copas artikel dari sini trus dipost di blog pribadi tanpa izin saya,, saya

doain gak bisa ngoding lagi.. :p

Mau source code aplikasi ini ? silahkan +1 dulu artikel ini dengan google plus kalian