You are on page 1of 120

1

HANDOUT
MOBILE COMPUTING

MUKIDIN, S. KOM, MM

Jurusan Sistem Informasi


STIKOM POLETK CIREBON 2016

Daftar Isi

MODUL 1........................................................................................................ 3
PEMROGRAMAN DASAR DENGAN ECLIPSE......................................................3
MODUL 2...................................................................................................... 11
PEWARNAAN PADA ANDROID........................................................................11
Pelaksanaan Praktikum................................................................................. 11
MODUL 3...................................................................................................... 14
Pelaksanaan Praktikum................................................................................. 14
Tugas Praktikum:.......................................................................................... 20
MODUL 4...................................................................................................... 21
Pelaksanaan Praktikum................................................................................. 21
MODUL 5...................................................................................................... 27
Pelaksanaan Praktikum................................................................................. 27
Tugas Praktikum :......................................................................................... 33
MODUL 6...................................................................................................... 34
Pelaksanaan Praktikum................................................................................. 34
Tugas Praktikum........................................................................................... 38
MODUL 7...................................................................................................... 39
Pelaksanaan Praktikum................................................................................. 39
MODUL 8...................................................................................................... 49
Pelaksanaan Praktikum................................................................................. 49
MODUL 9...................................................................................................... 53
INTENT......................................................................................................... 53
Pelaksanaan Praktikum................................................................................. 53
MODUL 10.................................................................................................... 98
DATABASE SQLITE......................................................................................... 98

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.
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 :
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

Pilih dan klik next

Gambar 1.4 Configure Launcher Icon


Pilih dan Klik Next

Gambar 1.5 Create Aktivity


Pilih dan Klik Next
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

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:

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

10

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:

Gambar 1.11
String.xml Peringatan : Jangan lupa di simpan
Kemudian

kembali

layar_latihan1.xml
gambar dibawah ini:

ke

desain

project

dan

masuk

kedalam

silahkan samakan koding xml-nya samakan dengan

11

Gambar 1.12 layar.xml

12

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:

1
0

Gambar 1.14 Hasil Program

1
1

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

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

Setelah pemilihan warna pada reference chooser maka bacground pada


graphics layout akan berubah seperti di bawah ini.

Gambar 2.4 Hasil Program Warna

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

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"

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" /
>

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;

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);

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() {
public void onClick(DialogInterface dialog, int
which) {
// 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")

.setPositiveButton("Ayeuna", new
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int
which) {
// TODO Auto-generated method stub
finish();
}
})
.setNegativeButton("Ngkin", new
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int
which) {
// 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

2
0

Tugas Praktikum:
Buatlah program sesuai dengan tampilan sebagai berikut :

Gambar 3.3 Tugas Modul 3

2
1

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

Latihan4

Package Name

nama.latihan4

Activity Name

Aktivitas

Layout Name

layar_aktivitas

Buatlah Tampilan sebagai berikut :

Gambar 4.1 Tampilan Rancangan Modul 4

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"

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"

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,
return true;
}
public void pilih_satu(View view)

menu);

{
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

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

Latihan5

Package Name

nama.latihan5

Activity Name

Aktivitas

Layout Name

layar_aktivitas

Buatlah Tampilan sebagai berikut :

Gambar 5.1 Tampilan Rancangan Modul 5

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"

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"

3
0

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;

3
1

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");
}

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 :

Gambar 5.2 Tampilan Kegunaan CheckBox


Tugas Praktikum :
Buatlah sebuah aplikasi android dengan mengabungkan RadioButton dan
CheckBox dalam satu layar.

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

Latihan6

Package Name

nama.latihan6

Activity Name

Aktivitas

Layout Name

layar_aktivitas

Buatlah Tampilan sebagai berikut :

Gambar 6.1 Tampilan Rancangan Modul 6

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"

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"
<EditText
android:text="
"
android:id="@+id/txtLuas"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:editable="false">

></TextView>

</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();
}
}

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.

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

Latihan7

Package Name

nama.latihan7

Activity Name

Aktivitas

Layout Name

layar_aktivitas

Buatlah Tampilan sebagai berikut :

4
0

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:

4
0
<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"

4
1

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"

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;

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--;

}
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;

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) {

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();

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:

Gambar 7.3 Aplikasi Perhitungan Usia (2)


Sehingga hasil akhirya pada gambar dibawah ini:

Gamabr 7.4 Aplikasi Perhitungan Usia (3)

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

Latihan8

Package Name

nama.latihan8

Activity Name

Aktivitas

Layout Name

layar_aktivitas

Buatlah Tampilan sebagai berikut :

Gamabr 8.1 Tampilan Rancangan Modul 8

5
0

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>

Dilanjutkan dengan listing program melalui Aktivitas.java sebagai berikut :


package alkho.latihan8;

5
1

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);

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

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>

7
1

<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"

7
2

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>
<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;

7
3

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();
}
});
}
//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


nama SecondActivity.java lalu isikan dengan kode berikut

dengan

7
4

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
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"?>

7
5

<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>
</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);

7
6

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);
}
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.

7
7

Untuk membaca data yang dikirim dari SecondActivity pada saat Activity
tersebut

ditutup.

Maka

kita

perlu

menambahkan

kode

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;
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();
}
});
}

pada

class

7
8

//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
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

7
9

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
{
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);
}

8
0

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();
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

8
1

Gamabr 9.1 Pembuatan Project


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"
>

8
2

<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>
<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"
>

8
3

<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>
<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 {

8
4

/** 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);
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;

8
5

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
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"?>

8
6

<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>
</activity>
<activity android:label="SeconActivity"
android:name=".SecondActivity"></activity>
</application
>
</manifest>
7. Sekarang mari kita jalankan programnya

8
7

Gambar 9.2 Tampilan Pertama


Klik button Call Second Activity

8
8

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();

8
9

//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

Gambar 9.4 Hasil 1


Isi Inputan Activity 1 dengan mau makan apa ?, lalu klik button Call Second
Activity

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

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;

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

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 {

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();

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

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

8
0

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

mempersiapkan sebuah class entity untuk Contact. Berikut ini classnya.


package com.example.sqlitetutorials;
public class Contact
{
private int
id; private String
name; private String
telp;
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;
}

saya

8
0

public String getName()


{
return name;
}

8
1

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

8
2

{
private static final String

DB_NAME

= "contact_db";

private static final int DB_VER

public static final String

= 1;

TABLE_NAME

"contact"; public static final String

=
COL_ID=

"_id"; public static final String


COL_NAME = "name";
public static final String

COL_TELP

private static final String

TAG

= "telp";

=
"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);
}

@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()
{

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);

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());
return db.update(TABLE_NAME, val, COL_ID + "=" +
contact.getId(), null) > 0;
}

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;
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

private static final int INSERT_ID

Menu.FIRST; EditText

empty;

private ListView

listview;

private DBAdapter

db;

= "_id";

@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()

{
// 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())

case INSERT_ID:
startActivity(new

AddContact.class))
;

Intent(MainActivity.this, break;

9
1

}
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,
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"

9
2

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;
import android.widget.Button;
import android.widget.EditText;
public class AddContact extends Activity implements OnClickListener
{

9
3

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())
{
case R.id.btnAdd:
Contact contact = new Contact();
contact.setName(inputName.getText().toString());
contact.setTelp(inputNumber.getText().toString());

9
4

db.createContact(contact);
startActivity(new Intent(AddContact.this,
MainActivity.class));
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" />
<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;

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

editName,

editPhone; Button

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);
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)
{
// 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());

db.updateContact(contact);
startActivity(new
MainActivity.class));

Intent(EditActivity.this,
finish();
break;
case R.id.editBtnDelete:

db.deleteContact(id);
MainActivity.class));

startActivity(new Intent(EditActivity.this,

finish();
break;

file xmlnya..
<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=".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"
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..

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

10
0

Gambar 10.2 Tampilan Rancangan Data


Tutorial Android SQLite Database

tampilan insert data

10
1

Gambar 10.3 Tampilan Rancangan Inputan


Tutorial Android SQLite Database

Gambar 10.4 Hasil Inputan


Tutorial Android SQLite Database

tampilan main activity ketika data sudah terisi..

Gamabr 10.5 Tampilan Data

You might also like