Multi-platform Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP- UX dan Mac OS X.

dokumen-dokumen yang mirip
Modul Pengembangan Aplikasi Android Berbasis Client- Server Aplikasi sederhana android Versi 1.0

Latihan 1 Menghitung Luas Persegi Panjang

Variabel dan tipe data

Praktikum 9 Pemprograman Android GUI 2 Layar

INTERFACING APLIKASI PENGHITUNGAN LUAS SEGITIGA DI ANDROID. Dibuat Oleh : Nama : Zunar Fitrianto NIM : Kelas : 13.5B.11

MODUL 10 KOMPONEN GUI ANDROID

MODUL 13 KOMPONEN GUI ANDROID

Membuat preferensi atau pengaturan pada aplikasi android

Penggunaan Button di Android

TUTORIAL PEMBUATAN APLIKASI SEDERHANA TOUCH AND GESTURE PADA ANDROID

Tutorial Aplikasi Android Sederhana dengan Action Button

Struktur & Pemakaian Teknologi Game Pembuatan Activity

PAPB-C. Yang harus dipersiapkan: 1. Eclipse 2. AVD/GenieMotion 3. JDK Membuat Android Application Project Baru

Modul Aplikasi Mobile. Pertemuan ke-2. Pengenalan environment android pada eclipse

[Pelatihan Pemrograman Android]

LAYOUT MENU UTAMA. <Button android:text="zakat Profesi" android:layout_width="wrap_content"

MODUL 14 INTERKONEKSI CLIENT-SERVER ANDROID

Membuat Alert Dialog Pada Android

Cara membuat Aplikasi Android : CheckBox dengan Eclipse

Praktikum VI Activity dan Intent

Tutorial Membuat Aplikasi Web View Android pada Eclipse

Praktikum XI Animasi dan Multimedia

Struktur & Pemakaian Teknologi Game Struktur Project Android

Ijin Akses Agar program kita dapat mengakses GPS, kita harus menambahkan permission pada AndroidManifest.xml sebagai berikut:

Cara Membuat Aplikasi Android Sederhana Menggunakan Eclipse

DAPATKAN SEGERAA!!!!! PERSEDIAAN TERBATASS!

ARTIKEL TUGAS AKHIR TUTORIAL APLIKASI RUMUS-RUMUS FISIKA LISTRIK DINAMIS DASAR BERBASIS ANDROID

Membuat list dengan RecylerView dan dependency injection ButterKniffe

Listing Program. //mengeset nama tab dan mengisi content pada menu tab anda. tabhost.addtab(spec);

Pertemuan 2. Pemrograman Mobile. 3 SKS Semester 7 S1 Sistem Informasi. Nizar Rabbi Radliya

Tutorial berikut akan mengajarkan rekan-rekan cara membuat kalkulator sederhana di android.

Cara Membuat Background Dinamis di Android

Program Database Sederhana di Android Desember 2011 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Android 2.

Membuat project Android di Eclipse Struktur project pada eclipse Mengenal Tag Layout User Interface

UNIVERSITAS KOMPUTER INDONESIA

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

BAB 3 XML LAYOUT, BASIC WIDGET DAN SELECTION WIDGET

Membuat Aplikasi Sederhana Hello World untuk Android

PEMROGRAMAN MOBILE PRAKTIKUM 11 ( DATABASE II ) Disusun oleh : CYNTHIA STEFFI CLIFF SI 12 A

DAFTAR PUSTAKA. A. S., R., & Shalahuddin, M. (2013). Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek. Bandung: Informatika.

UNIVERSITAS KOMPUTER INDONESIA

Praktikum 1 - Getting Started with Android

DAPATKAN SEGERAA!!!!! PERSEDIAAN TERBATASS!

Pemrograman Android dengan Eclipse

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Pemrograman Berorientasi Objek 3 (Mobile And Web Programming)

Aplikasi Mobile Informasi Pengenalan Profil Pahlawan Tingkat Dasar di Indonesia Menggunakan Java Berbasis Android

Praktikum IV Komponen UI (Radio Button, CheckBox dll)

DAPATKAN SEGERAA!!!!! PERSEDIAAN TERBATASS!

Pembuatan Aplikasi Android Sederhana dengan Eclipse

Call Phone Permission pada Android

UNIVERSITAS KOMPUTER INDONESIA

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

Class yang dipakai Untuk membuat tampilan map pada Android, kita bisa memanfaatkan MapView sebagai berikut:

UNIVERSITAS KOMPUTER INDONESIA

Custom Button pada Android Februari 2012 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Android 2.3, Eclipse

DAFTAR PUSTAKA. Binanto, I., multimedia digital-dasar teori dan pengembangannya, yogyakarta.

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

PERTEMUAN KE 4 Representasi Data (ListView dan Spinner)

Latihan 2 List Menu Bertingkat

Lecture Notes

public class MainActivity extends Activity implements AdapterView.OnItemClickListener{

Modul. Android Programming. Dyah Fajar Nur Rohmah

Membuat Interface Dinamis Menggunakan FrameLayout

Praktikum VI Activity dan Intent

Praktikum XI Animasi dan Multimedia

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

Membuat Simple List Transaksi

Membuat Spash Screen

Workshop Struktur dan Pemakaian Teknologi Game BAB 4. Menu

PERTEMUAN KE 7 Broadcast Receiver dan Services

ANDROID FOR BEGINNER MODUL 2

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Pemrograman Berorientasi Objek 3 (Mobile And Web Programming)

Percobaan 9 Basic Widget

UNIVERSITAS KOMPUTER INDONESIA

Praktikum 13 Dasar Pemprograman Android

BAB IV IMPLEMENTASI DAN PENGUJIAN

Menulis Aplikasi untuk Android Bagian I

BAB 5 Android Event Handling Mahardeka Tri Ananta

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

BAB IV IMPLEMENTASI DAN PENGUJIAN

Android - Apa itu.this dan.class

DAFTAR PUSTAKA. Adisasmita, Rahardjo Manajemen Pemerintah Daerah. Yogyakarta: Penerbit Graha Ilmu.

Membuat tab menu di aplikasi android

Membuat Chating Messager Di Android

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

Modul. Pemrograman Aplikasi Android

PERTEMUAN KE 9 Camera dan Multimedia

PEMBUATAN APLIKASI SOAL UMPN BESERTA PEMBAHASANNYA MENGGUNAKAN ANDROID BERBASIS CLIENT SERVER TUGAS AKHIR EKO JULIO MISRA

DAPATKAN SEGERAA!!!!! PERSEDIAAN TERBATASS!

BAB IV IMPLEMENTASI DAN PENGUJIAN APLIKASI

DAFTAR PUSTAKA.

UNIVERSITAS KOMPUTER INDONESIA

Cara membuat aplikasi Google Map Mengenal Koordinat pemetaan (Longitude dan Latitude)

LAPORAN PENCATATAN DATA ZAKAT (ANDROID)

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

BAB V KESIMPULAN DAN SARAN. besar dari perbandingan perhitungan manual dan program adalah 1,4473 %. Selisih

Location Based Services

Transkripsi:

1 MODUL 1 PEMROGRAMAN DASAR DENGAN ECLIPSE 1. Pengertian Aplikasi Mobile Aplikasi Mobile adalah sebuah aplikasi yang memungkinkan anda melakukan mobilitas dengan mengunakan perlengkapan seperti PDA, telepon seluler atau handpone. Dengan mengunakan aplikasi mobile, dapat memudahkan penguna dengan mudah melakukan berbagai aktifitas mulai dari hiburan, berjualan, belajar, browsing dan sebagai lainnya. Pemanfaatan aplikasi mobile unutk hiburan paling banyak digemari oleh hampir 70% penguna telepon seluler, karen dengan memanfaatkan adanya fitur game, music player, sampai video playermembuat kita menjadi semakin mudah menikmati hiburan kapan saja dan dimana saja. 2. Ecplise Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Adapun sifat dari Eclipse yaitu: Multi-platform Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP- UX dan Mac OS X. Mulit-language Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.

2 Multi-role Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya. Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in. 3. Instalasi Eclipse dapat anda peroleh melalui website www.karya-it.com download secara gratis. Setelah anda download seilahkan extrak filenya kemudian copy ke dalam drive C:\ pada labtop atau PC anda. Kemudian cari file eclipse.exe dan send to dekstop agar menjadi shortcut pada desktop. 4. Pelaksanaan Praktikum Buka Eclipe Pada Desktop maka akan tampil sebagai berikut: Gambar 1.1 Workspace Launcer pada Eclipse Gambar di atas menunjukan workspace project kita, maka kita harus membuat workspace kita sendiri. Setelah itu ikuti langkas berikut :

3 langkah 1: Membuat Project Baru Pilih pada menu File => New => Android Application Project. Gambar 1.2 Pengisian Application Name Kemudian isi pada application Name Latihan1 (diawali dengan Huruf Kapital) dan secara otomatis project name terisi dan pada package Name isi dengan nama.latihan1. kemudian klik dan pilih next sampai langkah 2. Gambar 1.3 Lanjutan Application Name

4 Pilih dan klik next Pilih dan Klik Next Gambar 1.4 Configure Launcher Icon Pilih dan Klik Next Gambar 1.5 Create Aktivity

5 Langkah 2: Pengisian Activity Gambar 1.6 Pengisian Activity Pada langkah 2 ini yaitu pengisian pada Activity Name diisi dengan Latihan1 dan Layout Name diisi dengan layar_latihan1. Kemudian Pilih dan Klik Finish sehingga muncul gambar seperti dibawah ini: Gambar 1.7 Tampilan Layar Ecplise

6 Langkah 3 : Menjalankan AVD Pada langkah ini pastikan AVD ( Android Virtual Device) jalan pada saat anda membuat project android adapun untuk menjalankannya pilih pada menu windows => Android Virtual Device, jika ada device yang tersedia maka langsung di start jika tidak pilih dan klik New dan akan tampil seperti gambar berikut : Gambar 1.8 Pembuatan AVD Isi AVD Name denga Android, pada divice pilih Galaxy Nexus dan pada skin pilih HVGA kemudian pilih Ok. Setelah itu pilih android dan pilih dan klik Start maka akan tampil seperti gambar dibawah ini:

7 Gambar 1.9 Android Virtual Devince Langkah 4 : Desain Project Pada desain project di android mengunakan xml namun pada eclipse dibantu dengan adanya palette yang saling berhubungan dengan xml. Pada project ini silahkan letakkan 2 TextView pada Graphical Layout sehingga hasilnya seperti gambar dibawah ini. Gambar 1.10 Pembuatan Hello World

8 Kemudian pada propertis TextView pertama pada text isikan dengan Ini adalah program pertama saya. Sedangkan pada TextView kedua pembuatan text dibuat melalui String.xml dimana String.xml terpadat pada package Latihan1 => values => String.xml. pada String.xml silahkan ketik seperti gambar dibawah ini: Peringatan : Jangan lupa di simpan Gambar 1.11 String.xml Kemudian kembali ke desain project dan masuk kedalam layar_latihan1.xml silahkan samakan koding xml-nya samakan dengan gambar dibawah ini: Gambar 1.12 layar.xml

9 Setelah siap diketik dan disimpan kemudian lihat perbedaan pada Graphical Layout seperti gambar dibawah ini: Gambar 1.13 Tampilan Rancangan Pada TextView pertama terlihat masih ada tanda seru sementara pada TextView kedua tidak ada. Ini artinya pada text pada object harus dikenali pada String.xml walapun tanda seru tersebut tidak membuat kesalahan pada sistem. Langkah 4 : Menjalankan Program Pada langkah ini adalah menjalan program dengan emulator ada pun caranya sebagai berikut : Klik kanan pada package Latihan1 kemudian pilih Run As kemudian pilih android application. Adapun hasilnya terlihat seperti gambar dibawah ini:

Gambar 1.14 Hasil Program 10

11 MODUL 2 PEWARNAAN PADA ANDROID Pada Modul 2 ini mahasiswa dituntut untuk mengetahui kode warna pada android dan memperdalam perkenalan string.xml Pelaksanaan Praktikum Buka project baru dengan pilih dan klik Menu File => New => Android Application Project. Isi data project sesuai dengan tabel dibawah ini : Tabel 2.1 Pengisian Nama Project Modul 2 Application Name Latihan2 Project Name Latihan2 Package Name Nama.latihan2 Activity Name Aktivitas Layout Name layar_aktivitas Kemudian masuk kedalam layar_aktivitas silahkan masukkan 1 TextView dan masuk kedalam String.xml kemudian ketikan seperti di bawah ini. Gambar 2.1 Tampilan String.xml

12 Gambar 2.2 Tampilan layar.xml Kemudian pada graphics layout pada propertis klik browse maka akan tampil seperti gambar dibawah ini dan silahkan pilih warna yang akan di beri bacground. Gambar 2.3 Pilihan Warna

13 Setelah pemilihan warna pada reference chooser maka bacground pada graphics layout akan berubah seperti di bawah ini. Gambar 2.4 Hasil Program Warna

14 MODUL 3 PENGUNAAN TextView, PlainText dan Button Pada modul ini mahasiswa akan mengetahui beberapa fungsi dan kegunaan pada palette ecplise. Pelaksanaan Praktikum Buka project baru dengan pilih dan klik Menu File => New => Android Application Project. Isi data project sesuai dengan tabel dibawah ini : Tabel 3.1 Pengisian Nama Project Modul 3 Application Name Latihan3 Project Name Latihan3 Package Name Nama.latihan3 Activity Name Aktivitas Layout Name layar_aktivitas Buatlah Tampilan sebagai berikut : Gambar 3.1 Target Rancangan Modul 3

15 Adapun text pada tools di atas di setting pada string.xml <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">latihan3</string> <string name="hello_world">hello world!</string> <string name="action_settings">settings</string> <string name="judul">contoh Pengunaak TextView PlainText dan Button</string> <string name="string1">masukkan Satu Kata</string> <string name="string2">ok</string> <string name="string3">hapus</string> <string name="string4">keluar</string> </resources> Kemudian desain program dengan buka layar_aktivitas.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/judul" /> <TextView android:id="@+id/widget36" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/string1" /> <EditText android:id="@+id/nim" android:layout_width="189dp" android:layout_height="wrap_content" android:ems="10"

16 android:inputtype="number" android:textsize="18sp" > <requestfocus /> </EditText> <Button android:id="@+id/ok" android:layout_width="74dp" android:layout_height="wrap_content" android:text="@string/string2" /> <Button android:id="@+id/hapus" android:layout_width="80dp" android:layout_height="wrap_content" android:text="@string/string3" /> <Button android:id="@+id/exit" android:layout_width="80dp" android:layout_height="wrap_content" android:text="@string/string4"/> <TextView android:id="@+id/hasilnim" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout> Setelah selesai pada layar_aktivitas.xml kemudian buat koding program pada Aktivitas.java. package alkho.latihan3; import android.support.v7.app.actionbaractivity; import android.os.bundle;

17 import android.view.menu; import android.view.view; import android.view.view.onclicklistener; import android.widget.edittext; import android.widget.textview; import android.widget.button; import android.app.alertdialog; import android.content.dialoginterface; public class Aktivitas extends ActionBarActivity implements OnClickListener EditText NIM; Button OK,Exit,Hapus; TextView hnim; @Override protected void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.layar_aktivitas); NIM = (EditText)findViewById(R.id.NIM); hnim = (TextView)findViewById(R.id.HasilNIM); OK = (Button)findViewById(R.id.OK); Exit = (Button)findViewById(R.id.Exit); Hapus = (Button)findViewById(R.id.Hapus); OK.setOnClickListener(this); Exit.setOnClickListener(this); Hapus.setOnClickListener(this); @Override public boolean oncreateoptionsmenu(menu menu) // Inflate the menu; this adds items to the action bar if it is present. getmenuinflater().inflate(r.menu.aktivitas, menu);

18 return true; public void hapus() hnim.settext(""); NIM.setText(""); NIM.requestFocus(); public void validasi() AlertDialog.Builder bvalid = new AlertDialog.Builder(this).setMessage("Form Belum Lengkap").setTitle("Warning").setPositiveButton("OK", new DialogInterface.OnClickListener() which) public void onclick(dialoginterface dialog, int // TODO Auto-generated method stub );bvalid.show(); public void onclick(view v) if(v==ok) if(nim.gettext().length()==0) validasi(); return; String nim=nim.gettext().tostring(); hnim.settext("yang Anda Ketik : "+nim); else if(v==hapus) hapus(); else if (v==exit) AlertDialog.Builder bexit = new AlertDialog.Builder(this).setMessage("Yakin ingin Keluar?").setTitle("Konfirmasi Keluar")

19.setPositiveButton("Ayeuna", new DialogInterface.OnClickListener() public void onclick(dialoginterface dialog, int which) // TODO Auto-generated method stub finish(); ).setnegativebutton("ngkin", new DialogInterface.OnClickListener() which) public void onclick(dialoginterface dialog, int // TODO Auto-generated method stub ); bexit.show(); Setelah anda selesaikan langkah di atas maka hasilnya seperti gambar dibawah ini: Gambar 3.2 Tampilan Modul 3

20 Tugas Praktikum: Buatlah program sesuai dengan tampilan sebagai berikut : Gambar 3.3 Tugas Modul 3

21 MODUL 4 PENGUNAAN RadioButton Pada modul ini mahasiswa akan mengetahui beberapa fungsi dan kegunaan pada RadioButton. Pelaksanaan Praktikum Buka project baru dengan pilih dan klik Menu File => New => Android Application Project. Isi data project sesuai dengan tabel dibawah ini : Tabel 4.1 Pengisian Nama Project Modul 4 Application Name Latihan4 Project Name Package Name Activity Name Layout Name Latihan4 nama.latihan4 Aktivitas layar_aktivitas Buatlah Tampilan sebagai berikut : Gambar 4.1 Tampilan Rancangan Modul 4

22 Adapun text pada string.xml adalah sebagai berikut : <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">latihan4</string> <string name="hello_world">hello world!</string> <string name="action_settings">settings</string> <string name="judul">contoh Pengunaan RadioButton</string> <string name="pilih1">pilihan pertama</string> <string name="pilih2">pilihan Kedua</string> <string name="pilih3">pilihan Ketiga</string> <string name="hasil">hasil</string> </resources> Kemudian desain tampilan dengan layar_aktivitas.xml seagai berikut: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/container" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="latih2.latih2.latih2_radiobutton" tools:ignore="mergerootframe" > <TextView android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparenttop="true" android:text="@string/judul" android:textsize="25sp" /> <RadioButton android:id="@+id/radiobutton1" android:onclick="pilih_satu" android:textsize="25sp"

23 android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/textview1" android:layout_margintop="22dp" android:text="@string/pilih1" /> <RadioButton android:id="@+id/radiobutton2" android:textsize="25sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/radiobutton1" android:layout_margintop="16dp" android:onclick="pilih_dua" android:text="@string/pilih2" /> <RadioButton android:id="@+id/radiobutton3" android:textsize="25sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/radiobutton2" android:layout_margintop="16dp" android:onclick="pilih_tiga" android:text="@string/pilih3" /> <TextView android:id="@+id/textview2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/radiobutton3" android:layout_margintop="30dp" android:text="@string/hasil"

24 android:textsize="25sp" /> </RelativeLayout> Pada Aktivitas.java listing programnya sebagai berikut : package alkho.latihan4; import android.support.v7.app.actionbaractivity; import android.os.bundle; import android.view.menu; import android.view.view; import android.widget.*; public class Aktivitas extends ActionBarActivity TextView hasil; RadioButton pilihan1,pilihan2,pilihan3; @Override protected void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.layar_aktivitas); hasil=(textview)findviewbyid(r.id.textview2); pilihan1=(radiobutton)findviewbyid(r.id.radiobutton1); pilihan2=(radiobutton)findviewbyid(r.id.radiobutton2); pilihan3=(radiobutton)findviewbyid(r.id.radiobutton3); @Override public boolean oncreateoptionsmenu(menu menu) // Inflate the menu; this adds items to the action bar if it is present. getmenuinflater().inflate(r.menu.aktivitas, menu); return true; public void pilih_satu(view view)

25 if(pilihan1.ischecked()) pilihan2.setchecked(false); pilihan3.setchecked(false); hasil.settext("hasil Pilihan Radiobutton 1"); public void pilih_dua(view view) if(pilihan2.ischecked()) pilihan1.setchecked(false); pilihan3.setchecked(false); hasil.settext("hasil Pilihan Radiobutton 2"); public void pilih_tiga(view view) if(pilihan3.ischecked()) pilihan1.setchecked(false); pilihan2.setchecked(false); hasil.settext("hasil Pilihan Radiobutton 3"); Setelah selesai menyelesaikan langkah-langkah di atas maka hasilnya sebagai berikut :

Gambar 4.2 Tampilan Kegunaan RadioButton 26

27 MODUL 5 PENGUNAAN CheckBox Pada modul ini mahasiswa akan mengetahui beberapa fungsi dan kegunaan pada CheckBox. Pelaksanaan Praktikum Buka project baru dengan pilih dan klik Menu File => New => Android Application Project. Isi data project sesuai dengan tabel dibawah ini : Tabel 5.1 Pengisian Nama Project Modul 5 Application Name Latihan5 Project Name Package Name Activity Name Layout Name Latihan5 nama.latihan5 Aktivitas layar_aktivitas Buatlah Tampilan sebagai berikut : Gambar 5.1 Tampilan Rancangan Modul 5

28 Adapun text yang ada pada string.xml adalah sebagai berikut : <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">latihan5</string> <string name="hello_world">hello world!</string> <string name="action_settings">settings</string> <string name="ktrng">contoh Penggunaan CheckBox</string> <string name="pilih1">pilihan Pertama</string> <string name="pilih2">pilihan Kedua</string> <string name="pilih3">pilihan Ketiga</string> <string name="hasil1">untuk Pilihan Ke Satu</string> <string name="hasil2">untuk Pilihan Ke Dua</string> <string name="hasil3">untuk Pilihan Ke Ketiga</string> </resources> Kemudian desain program tersebut dengan layar_aktivitas.xml sebagai berikut : <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/container" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="latih3.latih3.latih3" tools:ignore="mergerootframe" > <TextView android:id="@+id/textview1" android:textsize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparenttop="true"

29 android:text="@string/ktrng" /> <CheckBox android:id="@+id/checkbox1" android:onclick="pilih_1" android:textsize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/textview1" android:layout_margintop="25dp" android:text="@string/pilih1" /> <CheckBox android:id="@+id/checkbox2" android:onclick="pilih_2" android:textsize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/checkbox1" android:layout_margintop="20dp" android:text="@string/pilih2" /> <CheckBox android:id="@+id/checkbox3" android:onclick="pilih_3" android:textsize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/checkbox2" android:layout_margintop="31dp" android:text="@string/pilih3" /> <TextView android:id="@+id/textview2"

30 android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/checkbox3" android:layout_margintop="68dp" android:text="@string/hasil1" android:textsize="20sp" /> <TextView android:id="@+id/textview3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignright="@+id/textview2" android:layout_below="@+id/textview2" android:layout_margintop="16dp" android:text="@string/hasil2" android:textsize="20sp" /> <TextView android:id="@+id/textview4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/textview3" android:layout_margintop="14dp" android:text="@string/hasil3" android:textsize="20sp" /> </RelativeLayout> Pada listing program terletak pada Aktivitas.java dengan koding sebagai berikut : package alkho.latihan5; import android.support.v7.app.actionbaractivity; import android.os.bundle; import android.view.view;

31 import android.widget.*; public class Aktivitas extends ActionBarActivity CheckBox pilihan1,pilihan2,pilihan3; TextView hsl1,hsl2,hsl3; @Override protected void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.layar_aktivitas); pilihan1=(checkbox)findviewbyid(r.id.checkbox1); pilihan2=(checkbox)findviewbyid(r.id.checkbox2); pilihan3=(checkbox)findviewbyid(r.id.checkbox3); hsl1=(textview)findviewbyid(r.id.textview1); hsl2=(textview)findviewbyid(r.id.textview2); hsl3=(textview)findviewbyid(r.id.textview3); public void pilih_1(view view) if(pilihan1.ischecked()) hsl1.settext("pilihan Pertama Telah Dipilih"); else hsl1.settext("pilihan Pertama Tidak Dipilih"); public void pilih_2(view view) if(pilihan2.ischecked()) hsl2.settext("pilihan Kedua Telah Dipilih");

32 else hsl2.settext("pilihan Kedua Tidak Dipilih"); public void pilih_3(view view) if(pilihan3.ischecked()) hsl3.settext("pilihan Ketiga Telah Dipilih"); else hsl3.settext("pilihan Ketiga Tidak Dipilih"); Adapun tampilannya sebagai berikut :

33 Gambar 5.2 Tampilan Kegunaan CheckBox Tugas Praktikum : Buatlah sebuah aplikasi android dengan mengabungkan RadioButton dan CheckBox dalam satu layar.

34 MODUL 6 Membuat Aplikasi Perhitungan Pada modul ini mahasiswa akan mengetahui model-model perhitungan pada aplikasi android. Pelaksanaan Praktikum Pada praktikum modul 6 ini kita akan membuat perhitugan sederhana perhitungan luas persegi panjang. Buka project baru dengan pilih dan klik Menu File => New => Android Application Project. Isi data project sesuai dengan tabel dibawah ini : Tabel 6.1 Pengisian Nama Project Modul 6 Application Name Latihan6 Project Name Package Name Activity Name Layout Name Latihan6 nama.latihan6 Aktivitas layar_aktivitas Buatlah Tampilan sebagai berikut : Gambar 6.1 Tampilan Rancangan Modul 6

35 Adapun text pada string.xml adalah sebagai berikut : <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">perhitungan Luas Persegi Panjang</string> <string name="hello_world">hello world!</string> <string name="action_settings">settings</string> <string name="panjang">panjang : </string> <string name="lebar">lebar :</string> <string name="luas">luas :</string> <string name="hitung">hitung</string> </resources> Kemudian pada desain melalui layar_aktivitas dengan urutas sebagai berikut : <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:text="@string/panjang" android:id="@+id/textview01" android:layout_width="wrap_content" android:layout_height="wrap_content"></textview> <EditText android:text="" android:id="@+id/txtpanjang" android:layout_width="fill_parent" android:layout_height="wrap_content"

36 android:inputtype="numbersigned numberdecimal"></edittext> <TextView android:text="@string/lebar" android:id="@+id/textview02" android:layout_width="wrap_content" android:layout_height="wrap_content"> </TextView> <EditText android:text="" android:id="@+id/txtlebar" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputtype="numbersigned numberdecimal"> </EditText> <Button android:text="@string/hitung" android:id="@+id/btnhitung" android:layout_width="fill_parent" android:layout_height="wrap_content" android:onclick="hitungluas"> </Button> <TextView android:text="@string/luas" android:id="@+id/textview03" android:layout_width="wrap_content" android:layout_height="wrap_content" ></TextView> <EditText android:text="" android:id="@+id/txtluas" android:layout_width="fill_parent" android:layout_height="wrap_content" android:editable="false">

37 </EditText> </LinearLayout> Dilanjutkan dengan listing program melalui Aktivitas.java sebagai berikut : package alkho.latihan6; import android.support.v7.app.actionbaractivity; import android.os.bundle; import android.view.view; import android.widget.*; public class Aktivitas extends ActionBarActivity private EditText txtpanjang; private EditText txtlebar; private EditText txtluas; private Button btnhitung; @Override protected void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.layar_aktivitas); txtpanjang = (EditText) findviewbyid(r.id.txtpanjang); txtlebar = (EditText) findviewbyid(r.id.txtlebar); txtluas = (EditText) findviewbyid(r.id.txtluas); btnhitung = (Button) findviewbyid(r.id.btnhitung); public void hitungluas(view view) try int panjang = Integer.parseInt(txtPanjang.getText().toString()); int lebar = Integer.parseInt(txtLebar.getText().toString()); int luas = panjang * lebar; txtluas.settext(string.valueof(luas)); catch (Exception e) e.printstacktrace();

38 Setelah menyelesaikan langkah di atas makan hasil program terletas pada gambar di bawah ini : Gambar 6.2 Aplikasi Perhitungan Bangun Datar Tugas Praktikum Buatlah aplikasi android untuk mengitung bangun datar di bawah ini : 1. Perhitungan luas dan keliling persegi. 2. Perhitungan luas dan keliling jajaran genjang. Pada tugas ini ditambah sebuah tombol untuk membersihkan layar.

39 MODUL 7 Pembuatan Age Calculator Pada modul ini mahasiswa akan memperdalam pembuatan aplikasi android dengan eclipse. Pelaksanaan Praktikum Pada praktikum modul 7 ini kita akan membuat perhitugan usia melalui tanggal lahir dengan dua file java. Buka project baru dengan pilih dan klik Menu File => New => Android Application Project. Isi data project sesuai dengan tabel dibawah ini : Tabel 7.1 Pengisian Nama Project Modul 7 Application Name Latihan7 Project Name Package Name Activity Name Layout Name Latihan7 nama.latihan7 Aktivitas layar_aktivitas Buatlah Tampilan sebagai berikut :

40 Gambar 7.1 Tampilan Rancangan Modul 7 Adapun text yang akan dikenali pada string.xml seperti dibawah ini: <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">age Calculator</string> <string name="hello_world">hello world!</string> <string name="action_settings">settings</string> <string name="judul">date Of Birth</string> <string name="text1">current Date</string> <string name="text2">birth Date</string> <string name="text3">result</string> </resources> Kemudian desain sesuai dengan tampilan gambar diatas disamakan dengan layar_aktivitas.xml seperti dibawah ini: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/container" android:layout_width="match_parent" android:layout_height="match_parent"

41 tools:context="alkho.agecalcu.agecalcu" tools:ignore="mergerootframe" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparentright="true" android:layout_alignparenttop="true" android:text="@string/judul" /> <TextView android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/button1" android:layout_margintop="18dp" android:text="@string/text1" /> <TextView android:id="@+id/textview2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/textview1" android:layout_margintop="15dp" android:text="@string/text2" /> <TextView android:id="@+id/textview3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/textview2" android:layout_margintop="16dp"

42 android:text="@string/text3" /> </RelativeLayout> Kemudian tambahkan sebuah file java dengan cara mengcopy Aktivitas.java dan diberi mana AgeCalculator.java dan kode programnya seperti dibawah ini: package alkho.latihan7; import java.util.calendar; import java.util.date; public class AgeCalculator private int startyear; private int startmonth; private int startday; private int endyear; private int endmonth; private int endday; private int resyear; private int resmonth; private int resday; private Calendar start; private Calendar end; public String getcurrentdate() end=calendar.getinstance(); endyear=end.get(calendar.year); endmonth=end.get(calendar.month); endmonth++; endday=end.get(calendar.day_of_month); return endday+":"+endmonth+":"+endyear; public void setdateofbirth(int syear, int smonth, int sday) startyear=syear; startmonth=smonth;

43 startmonth++; startday=sday; public void calcualteyear() resyear=endyear-startyear; public void calcualtemonth() if(endmonth>=startmonth) resmonth= endmonth-startmonth; else resmonth=endmonth-startmonth; resmonth=12+resmonth; resyear--; public void calcualteday() if(endday>=startday) resday= endday-startday; else resday=endday-startday; resday=30+resday; if(resmonth==0) resmonth=11; resyear--;

44 else resmonth--; public String getresult() return resday+":"+resmonth+":"+resyear; public long getseconde() start=calendar.getinstance(); start.set(calendar.year, startyear); start.set(calendar.month, startmonth); start.set(calendar.day_of_month, startday); start.set(calendar.hour, 12); start.set(calendar.minute, 30); start.set(calendar.second, 30); start.set(calendar.millisecond, 30); long now=end.gettimeinmillis(); long old=start.gettimeinmillis(); long diff=old-now; return diff/1000; Setelah selesai dengan AgeCalculator.java kemudian lanjut dengan Aktivitas.java yang kode programnya seperti dibawah ini: package alkho.latihan7; import android.support.v7.app.actionbaractivity; import android.support.v7.app.actionbar; import android.support.v4.app.fragment;

45 import android.os.bundle; import android.view.layoutinflater; import android.view.menu; import android.view.menuitem; import android.view.view; import android.view.viewgroup; import android.os.build; import android.widget.*; import android.view.view.onclicklistener; import android.app.datepickerdialog; import android.app.dialog; import android.widget.datepicker; public class Aktivitas extends ActionBarActivity implements OnClickListener private Button btnstart; static final int DATE_START_DIALOG_ID = 0; private int startyear=1970; private int startmonth=6; private int startday=15; private AgeCalculator age = null; private TextView currentdate; private TextView birthdate; private TextView result; @Override protected void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.layar_aktivitas); age=new AgeCalculator(); currentdate=(textview) findviewbyid(r.id.textview1); currentdate.settext("tanggal Hari ini(hari/bulan/tahun) : "+age.getcurrentdate()); birthdate=(textview) findviewbyid(r.id.textview2); result=(textview) findviewbyid(r.id.textview3); btnstart=(button) findviewbyid(r.id.button1); btnstart.setonclicklistener(this); protected Dialog oncreatedialog(int id)

46 switch (id) case DATE_START_DIALOG_ID: return new DatePickerDialog(this, mdatesetlistener, startyear, startmonth, startday); return null; private DatePickerDialog.OnDateSetListener mdatesetlistener = new DatePickerDialog.OnDateSetListener() public void ondateset(datepicker view, int selectedyear, int selectedmonth, int selectedday) startyear=selectedyear; startmonth=selectedmonth; startday=selectedday; age.setdateofbirth(startyear, startmonth, startday); birthdate.settext("tanggal Lahir(DD/MM/YY): "+selectedday+":"+(startmonth+1)+":"+startyear); calculateage(); ; public void onclick(view v) // TODO Auto-generated method stub switch (v.getid()) case R.id.button1: showdialog(date_start_dialog_id); break; default: break; private void calculateage() age.calcualteyear(); age.calcualtemonth();

47 age.calcualteday(); Toast.makeText(getBaseContext(), "click the resulted button"+age.getresult(), Toast.LENGTH_SHORT).show(); result.settext("umur Kamu (DD/MM/YY) :"+age.getresult()); Adapun hasil programnya terlihat pada gambar dibawah ini: Gambar 7.2 Aplikasi Menghitung Usia Kemudian klik tombol date of birth dan hasilnya seperti dibawah ini:

48 Gambar 7.3 Aplikasi Perhitungan Usia (2) Sehingga hasil akhirya pada gambar dibawah ini: Gamabr 7.4 Aplikasi Perhitungan Usia (3)

49 MODUL 8 PENGUNAAN ListView Pada modul ini mahasiswa akan memperdalam pembuatan aplikasi android dengan eclipse. Pelaksanaan Praktikum Buka project baru dengan pilih dan klik Menu File => New => Android Application Project. Isi data project sesuai dengan tabel dibawah ini : Tabel 8.1 Pengisian Nama Project Modul 8 Application Name Latihan8 Project Name Package Name Activity Name Layout Name Latihan8 nama.latihan8 Aktivitas layar_aktivitas Buatlah Tampilan sebagai berikut : Gamabr 8.1 Tampilan Rancangan Modul 8

50 Adapun text yang ada pada string.xml adalah sebagai berikut : <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">latihan8</string> <string name="hello_world">hello world!</string> <string name="action_settings">settings</string> <string name="pilihan">contoh Pengunaah Listview</string> </resources> Kemudian desain sesuai dengan tampilan gambar diatas disamakan dengan layar_aktivitas.xml seperti dibawah ini: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/yangdipilih" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/pilihan" /> <ListView android:id="@+id/list" android:layout_width="match_parent" android:layout_height="wrap_content" android:drawselectorontop="false" > </ListView> </LinearLayout> Dilanjutkan dengan listing program melalui Aktivitas.java sebagai berikut : package alkho.latihan8;

51 import android.support.v7.app.actionbaractivity; import android.os.bundle; import android.os.build; import android.widget.listview; import android.widget.textview; import android.widget.arrayadapter; import android.app.listactivity; import android.widget.*; import android.view.view; import android.widget.adapterview; import android.widget.arrayadapter; import android.widget.listview; import android.widget.toast; import android.widget.adapterview.onitemclicklistener; public class Aktivitas extends ActionBarActivity implements OnItemClickListener private ListView ls_menu; private String[] menu = "Menu 1", "Menu 2", "Menu 3", "Menu 4", "Menu 5"; @Override public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.layar_aktivitas ); ls_menu = (ListView) findviewbyid(r.id.list ); ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1, menu);

52 ls_menu.setadapter(adapter); ls_menu.setonitemclicklistener(this); public void onitemclick(adapterview arg0, View arg1, int posisi, long arg3) Toast.makeText(Aktivitas.this, "Anda memilih "+menu[posisi], Toast.LENGTH_SHORT).show(); Adapun hasilnya terlihat pada gambar dibawah ini: Gambar 8.2 Contoh Pengunaan ListView

53 MODUL 9 INTENT Pada modul ini mahasiswa akan memperdalam pembuatan aplikasi android dengan eclipse. Pelaksanaan Praktikum Buka project baru dengan pilih dan klik Menu File => New => Android Application Project. Pada saat project pertama kali dibuat ada 3 file penting yang langsung dibuat, yaitu main.xml string.xml BelajarExplicitIntentActivity.java Kemusian Kita siapkan layout untuk Activity pertama kita, edit main.xml lalu isikan dengan kode berikut: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="main Activity" /> <TextView android:text="activity 1" android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content"></textview>

54 <EditText android:layout_height="wrap_content" android:id="@+id/edittext1" android:layout_width="match_parent"> <requestfocus></requestfocus> </EditText> <TextView android:text="dari Activity 2" android:id="@+id/textview2" android:layout_width="wrap_content" android:layout_height="wrap_content"></textview> <EditText android:layout_height="wrap_content" android:id="@+id/edittextdr2" android:layout_width="match_parent"></edittext> <Button android:text="call Second Activity" android:id="@+id/btnopen" android:layout_width="fill_parent" android:layout_height="wrap_content"></button> </LinearLayout> 3. Siapkan juga layout activity ke dua, buat file xml baru lalu simpan dengan nama main2.xml lalui isikan dengan kode berikut <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="second Activity" /> <TextView android:text="dari Activity 1" android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content"></textview>

55 <EditText android:layout_height="wrap_content" android:id="@+id/edittextdr1" android:layout_width="match_parent"> </EditText> <TextView android:text="activity 2" android:id="@+id/textview2" android:layout_width="wrap_content" android:layout_height="wrap_content"></textview> <EditText android:layout_height="wrap_content" android:id="@+id/edittext2" android:layout_width="match_parent"></edittext> <Button android:text="close Second Activity" android:id="@+id/btnclose" android:layout_width="fill_parent" android:layout_height="wrap_content"></button> </LinearLayout> Sekarang masuk ke file javanya, edit File BelajarExplicitIntentActivity.java lalu isikan kode berikut package com.agus.explicit.intent; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.widget.button; public class BelajarExplicitIntentActivity extends Activity /** Called when the activity is first created. */ @Override public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main);

56 Button btnopen = (Button) findviewbyid(r.id.btnopen); //set OnClickListener event to btnopen btnopen.setonclicklistener(new View.OnClickListener() public void onclick(view v) callintent(); ); //method for call SecondActivity public void callintent() Intent i = new Intent(this, SecondActivity.class); startactivity(i); Perhatika kode Intent i = new Intent(this, SecondActivity.class); startactivity(i); Kode inilah yang digunakan untuk memanggil class SecondActivity Kita buat file java baru untuk Activity Kedua, simpan dengan nama SecondActivity.java lalu isikan dengan kode berikut package com.agus.explicit.intent; import android.app.activity; import android.os.bundle; import android.view.view; import android.widget.button;

57 public class SecondActivity extends Activity public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main2); Button btnopen = (Button) findviewbyid(r.id.btnclose); btnopen.setonclicklistener(new View.OnClickListener() @Override public void onclick(view arg0) // TODO Auto-generated method stub finish(); //close activity ); Jangan lupa daftarkan Activity (SecodActivity.java) yang kita buat tadi pada Androidmanifest.xml dengan Tambahkan kode <activity android:label="seconactivity" android:name=".secondactivity"></activity> </application> Sehingga isi AndroidManifes.xmlmenjadi seperti ini <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.agus.explicit.intent" android:versioncode="1" android:versionname="1.0"> <uses-sdk android:minsdkversion="8" />

58 <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".belajarexplicitintentactivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:label="seconactivity" android:name=".secondactivity"></activity> </application> </manifest> 7. Sekarang mari kita jalankan programnya Klik button Call Second Activity dan Klik tombol Close Second Activity akan Menutup SecondActivity dan menampilkan Activity sebelumnya Kita juga bisa mengirimkan data ke Activity yang dipanggil. Untuk mengirimkan data gunakan peritnha putextra, untuk itu pada class BelajarExplicitIntentActivity.java, pada method callintent rubah menjadi seperti ini. public void callintent() Intent i = new Intent(this, SecondActivity.class); EditText text1 = (EditText) findviewbyid(r.id.edittextdr1); String dataactivity_1 = text1.gettext().tostring(); //untuk mengirim data gunakan putextra i.putextra("value1", dataactivity_1 ); startactivity(i);

59 Untuk membaca data yang dikirim dari Activity yang memanggil, pada class SecondActivity.java dalam method oncreate sesudah setcontentview(r.layout.main); tambah kode ini Bundle extras = getintent().getextras(); if (extras == null) return; String value1 = extras.getstring("value1"); if (value1!= null ) EditText text1 = (EditText) findviewbyid(r.id.edittext1); text1.settext(value1); sekarang mari kita run kembali dan Isi Inputan Activity 1 dengan mau makan apa?, lalu klik button Call Second Activity, Secara ototmatis Inputan Dari Activity 1 akan terisi sesuai dengan isian yang kita inputkan pada Activity Pemanggil. Isi inputan Activity 2 dengan nasi dengan ayam, lalu klik tombol Close Second Activity Jawaban dari Second Activity tidak terbaca oleh Activity Pemanggilnya. Untuk membaca data yang dikirim dari SecondActivity pada saat Activity tersebut ditutup. Maka kita perlu menambahkan kode pada class BelajarExplicitIntentActivity.java berikut kode lengkapnya. package com.agus.explicit.intent; import android.app.activity; import android.content.intent; import android.os.bundle;

60 import android.view.view; import android.widget.button; import android.widget.edittext; public class BelajarExplicitIntentActivity extends Activity private static final int REQUEST_CODE = 1; /** Called when the activity is first created. */ @Override public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main); Button btnopen = (Button) findviewbyid(r.id.btnopen); //set OnClickListener event to btnopen btnopen.setonclicklistener(new View.OnClickListener() public void onclick(view v) callintent(); ); //method for call SecondActivity public void callintent() Intent i = new Intent(this, SecondActivity.class); EditText text1 = (EditText) findviewbyid(r.id.edittext1); String dataactivity_1 = text1.gettext().tostring(); //untuk mengirim data gunakan putextra i.putextra("value1", dataactivity_1 ); startactivityforresult(i, REQUEST_CODE);

61 @Override protected void onactivityresult(int requestcode, int resultcode, Intent data) if (resultcode == RESULT_OK && requestcode == REQUEST_CODE) if (data.hasextra("return_value1")) EditText text2 = (EditText) findviewbyid(r.id.edittextdr2); text2.settext(data.getextras().getstring("return_value1")); Perhatikan code startactivityforresult(i, REQUEST_CODE); Agar Activity pemanggil dapat menangkap data yang dikirimkan oleh activity yang dipanggil, maka kita harus menggunakan perintah startactivityforresult dan kita harus mengoveride method onactivityresult Pada Class SecondActivity.java rubah isinya menjadi seperti ini. package com.agus.explicit.intent; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.widget.button; import android.widget.edittext;

62 public class SecondActivity extends Activity public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main2); Bundle extras = getintent().getextras(); if (extras == null) return; String value1 = extras.getstring("value1"); if (value1!= null ) EditText text1 = (EditText) findviewbyid(r.id.edittextdr1); text1.settext(value1); Button btnopen = (Button) findviewbyid(r.id.btnclose); btnopen.setonclicklistener(new View.OnClickListener() ); @Override public void onclick(view arg0) // TODO Auto-generated method stub finish(); //close activity @Override public void finish() Intent data = new Intent(); EditText text2 = (EditText) findviewbyid(r.id.edittext2);

63 String dataactivity_2 = text2.gettext().tostring(); data.putextra("return_value1", dataactivity_2); setresult(result_ok, data); super.finish(); Agar dapat mengirim data ke activity pemanggil pada saat activity ini diclose maka kita perlu mengoverride method finish Sekarang mari kita jalankan programnya, lakukan langkah-langkah sebelumnya, Sekarang pada saat kta klik tombol Close Second Activity maka tampilannya adalah Kita telah berhasil membaca data yang dikirimkan oleh Second Activity, agar lebih memahami cobalah praktekan konsep Explicit Intent ini pada aplikasi yang kita buat. Kita sudah belajar tentang Explicit Intent, ada tugas nih buatlah aplikasi yang Activity pertamanya berisi List nama buah yang pabila diklik akan memanggil Activity ke 2 yang akan menampilkan gambar buahnya Gamabr 9.1 Pembuatan Project

64 Pada saat project pertama kali dibuat ada 3 file penting yang langsung dibuat, yaitu main.xml string.xml BelajarExplicitIntentActivity.java 2. Kita siapkan layout untuk Activity pertama kita, edit main.xml lalu isikan dengan kode berikut <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="main Activity" /> <TextView android:text="activity 1" android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content"></textview> <EditText android:layout_height="wrap_content" android:id="@+id/edittext1" android:layout_width="match_parent"> <requestfocus></requestfocus> </EditText> <TextView android:text="dari Activity 2" android:id="@+id/textview2" android:layout_width="wrap_content" android:layout_height="wrap_content"></textview>

65 <EditText android:layout_height="wrap_content" android:id="@+id/edittextdr2" android:layout_width="match_parent"></edittext> <Button android:text="call Second Activity" android:id="@+id/btnopen" android:layout_width="fill_parent" android:layout_height="wrap_content"></button> </LinearLayout> 3. Siapkan juga layout activity ke dua, buat file xml baru lalu simpan dengan nama main2.xml lalui isikan dengan kode berikut <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="second Activity" /> <TextView android:text="dari Activity 1" android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content"></textview> <EditText android:layout_height="wrap_content" android:id="@+id/edittextdr1" android:layout_width="match_parent"> </EditText> <TextView android:text="activity 2" android:id="@+id/textview2" android:layout_width="wrap_content" android:layout_height="wrap_content"></textview> <EditText android:layout_height="wrap_content" android:id="@+id/edittext2" android:layout_width="match_parent"></edittext>

66 <Button android:text="close Second Activity" android:id="@+id/btnclose" android:layout_width="fill_parent" android:layout_height="wrap_content"></button> </LinearLayout> 4. Sekarang masuk ke file javanya, edit File BelajarExplicitIntentActivity.java lalu isikan kode berikut package com.agus.explicit.intent; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.widget.button; public class BelajarExplicitIntentActivity extends Activity /** Called when the activity is first created. */ @Override public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main); Button btnopen = (Button) findviewbyid(r.id.btnopen); //set OnClickListener event to btnopen btnopen.setonclicklistener(new View.OnClickListener() public void onclick(view v) callintent(); );

67 //method for call SecondActivity public void callintent() Intent i = new Intent(this, SecondActivity.class); startactivity(i); Perhatika kode Intent i = new Intent(this, SecondActivity.class); startactivity(i); Kode inilah yang digunakan untuk memanggil class SecondActivity 5. Kita buat file java baru untuk Activity Kedua, simpan dengan nama SecondActivity.java lalu isikan dengan kode berikut package com.agus.explicit.intent; import android.app.activity; import android.os.bundle; import android.view.view; import android.widget.button; public class SecondActivity extends Activity public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main2); Button btnopen = (Button) findviewbyid(r.id.btnclose); btnopen.setonclicklistener(new View.OnClickListener() @Override

68 ); public void onclick(view arg0) // TODO Auto-generated method stub finish(); //close activity 6. Jangan lupa daftarkan Activity (SecodActivity.java) yang kita buat tadi pada Androidmanifest.xml. Tambahkan kode <activity android:label="seconactivity" android:name=".secondactivity"></activity> </application> Sehingga isi AndroidManifes.xmlmenjadi seperti ini <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.agus.explicit.intent" android:versioncode="1" android:versionname="1.0"> <uses-sdk android:minsdkversion="8" /> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".belajarexplicitintentactivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter>

69 </activity> <activity android:label="seconactivity" android:name=".secondactivity"></activity> </application> </manifest> 7. Sekarang mari kita jalankan programnya Klik button Call Second Activity Gambar 9.2 Tampilan Pertama

70 Gambar 9.3 Tampilan Kedua Klik tombol Close Second Activity akan Menutup SecondActivity dan menampilkan Activity sebelumnya 8. Kita juga bisa mengirimkan data ke Activity yang dipanggil. Untuk mengirimkan data gunakan peritnha putextra, untuk itu pada class BelajarExplicitIntentActivity.java, pada method callintent rubah menjadi seperti ini. public void callintent() Intent i = new Intent(this, SecondActivity.class); EditText text1 = (EditText) findviewbyid(r.id.edittextdr1); String dataactivity_1 = text1.gettext().tostring();

71 //untuk mengirim data gunakan putextra i.putextra("value1", dataactivity_1 ); startactivity(i); 9. Untuk membaca data yang dikirim dari Activity yang memanggil, pada class SecondActivity.java dalam method oncreate sesudah setcontentview(r.layout.main); tambah kode ini Bundle extras = getintent().getextras(); if (extras == null) return; String value1 = extras.getstring("value1"); if (value1!= null ) EditText text1 = (EditText) findviewbyid(r.id.edittext1); text1.settext(value1); 10. sekarang mari kita run kembali

72 Gambar 9.4 Hasil 1 Isi Inputan Activity 1 dengan mau makan apa?, lalu klik button Call Second Activity

73 Gambar 9.5 Hasil kedua Secara ototmatis Inputan Dari Activity 1 akan terisi sesuai dengan isian yang kita inputkan pada Activity Pemanggil. Isi inputan Activity 2 dengan nasi dengan ayam, lalu klik tombol Close Second Activity

74 Gambar 9.6 Hasil Ketiga Jawaban dari Second Activity tidak terbaca oleh Activity Pemanggilnya. 11. Untuk membaca data yang dikirim dari SecondActivity pada saat Activity tersebut ditutup. Maka kita perlu menambahkan kode pada class BelajarExplicitIntentActivity.java berikut kode lengkapnya. package com.agus.explicit.intent; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view;

75 import android.widget.button; import android.widget.edittext; public class BelajarExplicitIntentActivity extends Activity private static final int REQUEST_CODE = 1; /** Called when the activity is first created. */ @Override public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main); Button btnopen = (Button) findviewbyid(r.id.btnopen); //set OnClickListener event to btnopen btnopen.setonclicklistener(new View.OnClickListener() public void onclick(view v) callintent(); ); //method for call SecondActivity public void callintent() Intent i = new Intent(this, SecondActivity.class); EditText text1 = (EditText) findviewbyid(r.id.edittext1); String dataactivity_1 = text1.gettext().tostring(); //untuk mengirim data gunakan putextra i.putextra("value1", dataactivity_1 ); startactivityforresult(i, REQUEST_CODE); @Override

76 protected void onactivityresult(int requestcode, int resultcode, Intent data) if (resultcode == RESULT_OK && requestcode == REQUEST_CODE) if (data.hasextra("return_value1")) EditText text2 = (EditText) findviewbyid(r.id.edittextdr2); text2.settext(data.getextras().getstring("return_value1")); Perhatikan code startactivityforresult(i, REQUEST_CODE); Agar Activity pemanggil dapat menangkap data yang dikirimkan oleh activity yang dipanggil, maka kita harus menggunakan perintahstartactivityforresult dan kita harus mengoveride method onactivityresult 12. Pada Class SecondActivity.java rubah isinya menjadi seperti ini. package com.agus.explicit.intent; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.widget.button; import android.widget.edittext; public class SecondActivity extends Activity

77 public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main2); Bundle extras = getintent().getextras(); if (extras == null) return; String value1 = extras.getstring("value1"); if (value1!= null ) EditText text1 = (EditText) findviewbyid(r.id.edittextdr1); text1.settext(value1); Button btnopen = (Button) findviewbyid(r.id.btnclose); btnopen.setonclicklistener(new View.OnClickListener() ); @Override public void onclick(view arg0) // TODO Auto-generated method stub finish(); //close activity @Override public void finish() Intent data = new Intent(); EditText text2 = (EditText) findviewbyid(r.id.edittext2); String dataactivity_2 = text2.gettext().tostring();

78 data.putextra("return_value1", dataactivity_2); setresult(result_ok, data); super.finish(); Agar dapat mengirim data ke activity pemanggil pada saat activity ini diclose maka kita perlu mengoverride method finish 13. Sekarang mari kita jalankan programnya, lakukan langkah-langkah seperti pada point 10. Sekarang pada saat kta klik tombol Close Second Activity maka tampilannya adalah Gambar 9.7 Hasil Keempat

79 14. Kita telah berhasil membaca data yang dikirimkan oleh Second Activity, agar lebih memahami cobalah praktekan konsep Explicit Intent ini pada aplikasi yang kita buat. Kita sudah belajar tentang Explicit Intent, ada tugas nih buatlah aplikasi yang Activity pertamanya berisi List nama buah yang pabila diklik akan memanggil Activity ke 2 yang akan menampilkan gambar buahnya

80 MODUL 10 DATABASE SQLITE Berikut merupakan contoh penggunaan sqlite ini saya akan membuat sebuah aplikasi android untuk menyimpan Contact, data yang saya simpan adalahnama dan Nomer Telepon. Untuk langkah pertama saya mempersiapkan sebuah class entity untuk Contact. Berikut ini classnya. package com.example.sqlitetutorials; public class Contact private int private String name; private String telp; id; public Contact() // TODO Auto-generated constructor stub public Contact(String name, String telp) super(); this.name = name; this.telp = telp; public int getid() return id; public void setid(int id) this.id = id; public String getname() return name;

81 public void setname(string name) this.name = name; public String gettelp() return telp; public void settelp(string telp) this.telp = telp; class ini hanyalah berisi nama table yang akan ada didatabase kita nanti, beserta method getter dan setter. Selanjut adalah mepersiapkan class untuk menangani proses CRUD(Create, Read, Update, Delete). Disini saya membuat sebuah class yang saya berinama package com.example.sqlitetutorials; import android.content.contentvalues; import android.content.context; import android.database.cursor; import android.database.sqlexception; import android.database.sqlite.sqlitedatabase; import android.database.sqlite.sqliteopenhelper; import android.util.log; public class DBAdapter private static final String DB_NAME = "contact_db";

82 private static final int DB_VER = 1; public static final String TABLE_NAME = "contact"; public static final String COL_ID = "_id"; public static final String COL_NAME = "name"; public static final String COL_TELP = "telp"; private static final String TAG = "ContactDBAdapter"; private DatabaseHelper dbhelper; private SQLiteDatabase db; private static final String DB_CREATE = "create table contact (_id integer primary key, name text not null, telp text not null);"; private final Context context; private static class DatabaseHelper extends SQLiteOpenHelper public DatabaseHelper(Context context) // TODO Auto-generated constructor stub super(context, DB_NAME, null, DB_VER); @Override public void oncreate(sqlitedatabase db) // TODO Auto-generated method stub db.execsql(db_create);

83 @Override public void onupgrade(sqlitedatabase db, int oldversion, int newversion) // TODO Auto-generated method stub Log.d(TAG, "upgrade DB"); db.execsql("drop TABLE IF EXISTS " + TABLE_NAME); oncreate(db); public DBAdapter(Context context) this.context = context; // TODO Auto-generated constructor stub public DBAdapter open() throws SQLException dbhelper = new DatabaseHelper(context); db = dbhelper.getwritabledatabase(); return this; public void close()

84 dbhelper.close(); public void createcontact(contact contact) ContentValues val = new ContentValues(); val.put(col_name, contact.getname()); val.put(col_telp, contact.gettelp()); db.insert(table_name, null, val); public boolean deletecontact(int id) return db.delete(table_name, COL_ID + "=" + id, null) > 0; public Cursor getallcontact() return db.query(table_name, new String[] COL_ID, COL_NAME, COL_TELP, null, null, null, null, null); public Cursor getsinglecontact(int id) Cursor cursor = db.query(table_name, new String[] COL_ID, COL_NAME, COL_TELP, COL_ID + "=" + id, null, null, null, null);

85 if (cursor!= null) cursor.movetofirst(); return cursor; public boolean updatecontact(contact contact) ContentValues val = new ContentValues(); val.put(col_name, contact.getname()); val.put(col_telp, contact.gettelp()); contact.getid(), null) > 0; return db.update(table_name, val, COL_ID + "=" + pada class DBAdapter, terdapat method untuk update, insert, sampai delete.. untuk class mainactivitynya penampakannya seperti berikut : package com.example.sqlitetutorials; import android.os.bundle; import android.app.activity; import android.content.intent; import android.database.cursor; import android.support.v4.widget.simplecursoradapter; import android.view.menu; import android.view.menuitem; import android.view.view; import android.widget.adapterview;

86 import android.widget.adapterview.onitemclicklistener; import android.widget.edittext; import android.widget.listview; public class MainActivity extends Activity implements OnItemClickListener public static final String KEY_ID = "_id"; private static final int INSERT_ID = Menu.FIRST; EditText private ListView private DBAdapter empty; listview; db; @Override protected void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); db = new DBAdapter(this); db.open(); listview = (ListView) findviewbyid(r.id.list); listview.setemptyview(findviewbyid(r.id.empty)); listview.setonitemclicklistener(this); loaddata(); private void loaddata()

87 // TODO Auto-generated method stub Cursor cur = db.getallcontact(); String[] from = new String[] DBAdapter.COL_NAME, DBAdapter.COL_TELP ; int[] to = new int[] R.id.txtName, R.id.txtPhoneNumber ; SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.list_adapter, cur, from, to); listview.setadapter(adapter); @Override public boolean oncreateoptionsmenu(menu menu) // Inflate the menu; this adds items to the action bar if it is present. menu.add(0, INSERT_ID, 0, R.string.menu_add); return true; @Override public boolean onoptionsitemselected(menuitem item) // TODO Auto-generated method stub switch (item.getitemid())

88 AddContact.class)); case INSERT_ID: startactivity(new Intent(MainActivity.this, break; return super.onoptionsitemselected(item); @Override public void onitemclick(adapterview<?> arg0, View v, int pos, long id) // TODO Auto-generated method stub Bundle bundle = new Bundle(); bundle.putlong(key_id, id); Intent intent = new Intent(MainActivity.this, EditActivity.class); intent.putextras(bundle); db.close(); startactivity(intent); di file mainactivity saya menggunakan SimpleCursorAdapter untuk menampilkan data yang ada kedalam listview yang sudah saya tambahkan di file xml nya. Kemudian mainactivity ini juga memiliki menu option yang akan muncul ketika user mengklik tombol menu yang ada di handset, jika user menekan tombol menu, maka akan muncul menu Insert dan activity berpindah ke AddContact,

89 untuk file main_activity.xml sebagai berikut : <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=".mainactivity" > <ListView android:id="@+id/list" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> <TextView android:id="@+id/empty" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="empty Data" /> </RelativeLayout> untuk class AddContact sebagai berikut : package com.example.sqlitetutorials; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.view.view.onclicklistener;

90 import android.widget.button; import android.widget.edittext; public class AddContact extends Activity implements OnClickListener EditText inputname, inputnumber; Button btnadd; DBAdapter db; @Override protected void oncreate(bundle savedinstancestate) // TODO Auto-generated method stub super.oncreate(savedinstancestate); db = new DBAdapter(this); db.open(); setcontentview(r.layout.add); inputname = (EditText) findviewbyid(r.id.inputname); inputnumber = (EditText) findviewbyid(r.id.inputnumber); btnadd = (Button) findviewbyid(r.id.btnadd); btnadd.setonclicklistener(this); @Override public void onclick(view v) // TODO Auto-generated method stub switch (v.getid())

91 case R.id.btnAdd: Contact contact = new Contact(); contact.setname(inputname.gettext().tostring()); contact.settelp(inputnumber.gettext().tostring()); MainActivity.class)); db.createcontact(contact); startactivity(new Intent(AddContact.this, db.close(); finish(); break; default: break; dan file xml nya <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:id="@+id/txtname" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/str_name" />

92 <EditText android:id="@+id/inputname" android:layout_width="match_parent" android:layout_height="wrap_content" android:ems="10" android:hint="@string/hint_name" > <requestfocus /> </EditText> <TextView android:id="@+id/txtnumber" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/str_hp" /> <EditText android:id="@+id/inputnumber" android:layout_width="match_parent" android:layout_height="wrap_content" android:ems="10" android:hint="@string/hint_phone" android:inputtype="numberpassword" /> <Button android:id="@+id/btnadd" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/btn_add" /> </LinearLayout> untuk bagian edit atau delete contact saya membuat sebuah activity yakni EditActivity untuk menangani Edit contact dam delete contact package com.example.sqlitetutorials; import android.os.bundle;

93 import android.app.activity; import android.content.intent; import android.database.cursor; import android.view.menu; import android.view.view; import android.view.view.onclicklistener; import android.widget.button; import android.widget.edittext; public class EditActivity extends Activity implements OnClickListener DBAdapter db; EditText Button editname, editphone; btnsave, btndelete; int id; @Override protected void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.activity_edit); db = new DBAdapter(this); db.open(); Bundle b = getintent().getextras(); id = (int) b.getlong(mainactivity.key_id); editname = (EditText) findviewbyid(r.id.editname); editphone = (EditText) findviewbyid(r.id.editphone);

94 btnsave = (Button) findviewbyid(r.id.editbtnsave); btndelete = (Button) findviewbyid(r.id.editbtndelete); btnsave.setonclicklistener(this); btndelete.setonclicklistener(this); tampildata(); private void tampildata() // TODO Auto-generated method stub Cursor cursor = db.getsinglecontact(id); editname.settext(cursor.getstring(cursor.getcolumnindexorthrow(dba dapter.col_name))); editphone.settext(cursor.getstring(cursor.getcolumnindexorthrow(dba dapter.col_telp))); @Override public boolean oncreateoptionsmenu(menu menu) // Inflate the menu; this adds items to the action bar if it is present. getmenuinflater().inflate(r.menu.edit, menu); return true; @Override public void onclick(view v)

95 // TODO Auto-generated method stub switch (v.getid()) case R.id.editBtnSave: Contact contact = new Contact(); contact.setid(id); contact.setname(editname.gettext().tostring()); contact.settelp(editphone.gettext().tostring()); MainActivity.class)); db.updatecontact(contact); startactivity(new Intent(EditActivity.this, finish(); break; case R.id.editBtnDelete: MainActivity.class)); db.deletecontact(id); startactivity(new Intent(EditActivity.this, finish(); break; file xmlnya.. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

96 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=".editactivity" > <TextView android:id="@+id/editex" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparenttop="true" android:text="@string/str_name" /> <EditText android:id="@+id/editname" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/editex" android:layout_below="@+id/editex" android:layout_margintop="14dp" android:ems="10" > <requestfocus /> </EditText> <TextView android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/editname" android:layout_below="@+id/editname"

97 android:layout_margintop="32dp" android:text="@string/str_hp" /> <EditText android:id="@+id/editphone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/textview1" android:layout_below="@+id/textview1" android:layout_margintop="27dp" android:ems="10" android:inputtype="phone" /> <Button android:id="@+id/editbtnsave" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/editphone" android:layout_below="@+id/editphone" android:layout_margintop="35dp" android:text="save" /> <Button android:id="@+id/editbtndelete" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignbaseline="@+id/editbtnsave" android:layout_alignbottom="@+id/editbtnsave" android:layout_alignright="@+id/editphone" android:text="delete" /> </RelativeLayout> Ketika program pertama kali dijalankan..

98 Gambar 10.1 Tampilan Rancangan Layar Tutorial Android SQLite Database akan muncul text Empty Data hal ini dikarenakan kita sudah menset ketika list empty akan menampikan text empty data.. listview.setemptyview(findviewbyid(r.id.empty)); Ketika tombol menu ditekan

99 Gambar 10.2 Tampilan Rancangan Data Tutorial Android SQLite Database tampilan insert data

100 Gambar 10.3 Tampilan Rancangan Inputan Tutorial Android SQLite Database

101 Gambar 10.4 Hasil Inputan Tutorial Android SQLite Database tampilan main activity ketika data sudah terisi..

Gamabr 10.5 Tampilan Data 102