Anda di halaman 1dari 29

MODUL

PEMROGRAMAN BERORIENTASI OBJEK

DISUSUN OLEH
VIKTOR HANDRIANUS PRANATAWIJAYA, ST., MT.
SHERLY CHRISTINA, S.KOM., M.KOM

JURUSAN TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS PALANGKARAYA

TATA TERTIB DAN TATA LAKSANA PRAKTIKUM

TATA TERTIB
1. Praktikan WAJIB mengikuti semua modul praktikum.
2. Praktikan hanya boleh tidak mengikuti praktikum 1 (Satu) kali DENGAN ATAU
TANPA SURAT IZIN dari jumlah pertemuan praktikum.
3. Praktikan yang berhalangan mengikuti praktikum, diwajibkan melaporkan ke dosen
praktikum untuk menentukan jadwal praktikum sebagai pengganti jadwal yang
berhalangan.
4. Praktikan yang lebih dari 1 (satu) kali tidak mengikuti praktikum, tidak diperbolehkan
untuk mengikuti praktikum untuk modul-modul praktikum selanjutnya dan NILAI
AKHIR PRAKTIKUM adalah NOL.
5. Praktikan diberikan toleransi waktu keterlambatan selama 15 menit dan tidak ada
penambahan waktu praktikum.
6. Tidak diperbolehkan saling bekerja sama.
7. Dilarang menggunakan kaos oblong dan sendal selama praktikum. Bagi yang
melanggar poin ini, tidak diperbolehkan mengikuti ujian.

TATA LAKSANA :
1. Sebelum praktikum di mulai, setiap praktikum wajib mengumpulkan LAPORAN
HASIL PRAKTIKUM modul sebelumnya.
2. Jika praktikan tidak melaksanakan Tata Laksana poin 1, maka tidak diperbolehkan
mengikuti praktikum.
3. Setiap modul praktikum, akan dilakukan Pre-Test.
4. Format laporan meliputi :
Laporan Hasil Praktikum :
Halaman Depan
BAB I. Tujuan dan Landasan Teori
BAB II. Langkah Kerja
BAB III. Pembahasan
BAB IV. Kesimpulan
BAB V. Daftar Pustaka
BAB VI. Lampiran (Disertai laporan rencana praktikum modul sebelumnya)

5. Format Penulisan
Spasi
Font
Font Size
Margins
Kertas

: 1,5
: Times New Roman
: 12
: Top 3, Left 4, Right 3, Bottom 3
: A4

6. Penilaian Laporan Hasil Praktikum


BAB I. Tujuan dan Landasan Teori
BAB II. Langkah Kerja
BAB III. Pembahasan
BAB IV. Kesimpulan
BAB V. Daftar Pustaka
BAB VI. Lampiran
Total

Nilai 20
Nilai 10
Nilai 40
Nilai 15
Nilai 5
Nilai 10
100

7. Praktikan yang mengabaikan format penulisan poin 5, akan dikurang 5 setiap


kesalahan.
8. Penilaian Akhir Praktikum
Pre-Test
Praktikum
Laporan Praktikum
Responsi
Total

: 15 %
: 30 %
: 20 %
: 35 %
100 %

9. Penilaian Akhir Mata Kuliah Pemrograman Berorientasi Objek :


Tugas
: 20 %
UTS
: 30 % 50 %
Praktikum
: 50 %
UAS
:
50 %
Nilai Akhir

100 %

MODUL I
CLASS
1. Tujuan

Mahasiswa dapat membuat class.

Mahasiswa dapatmengimport dan membuat package

Mahasiswa dapat menggunakan access modifiers untuk mengendalikan akses terhadap class
member

2. Pembahasan
2.1. Pengenalan Dasar Class
Struktur class secara umum adalah seperti berikut:
<modifier> class <name> {
<attributeDeclaration>*
<constructorDeclaration>*
<methodDeclaration>*
}

dimana :
<modifier> adalah sebuah access modifier, yang dapat dikombinasikan dengan tipe
modifierlain.
2.2.Package
Packages dalam JAVA berarti pengelompokan beberapa class dan interface dalam satu
unit.Fitur ini menyediakan mekanisme untuk mengatur class dan interface dalam jumlah banyakdan
menghindari konflik pada penamaan.
2.2.1.Mengimport Packages
Supaya dapat meggunakan class yang berada diluar package yang sedang dikerjakan,
Andaharus mengimport package dimana class tersebut berada. Pada dasarnya, seluruh
programJAVA mengimport package java.lang.*, sehingga Anda dapat menggunakan class
sepertiString dan Integer dalam program meskipun belum mengimport package sama sekali.
Penulisan import package dapat dilakukan seperti dibawah ini :
import <namaPaket>;

Sebagai contoh, bila Anda ingin menggunakan class Color dalam package awt, Anda
harusmenuliskan import package sebagai berikut :
import java.awt.Color;
import java.awt.*;

2.2.2.Membuat Package
Untuk membuat package, dapat dilakukan dengan menuliskan :
package <packageName>;

3. Tugas
1. Analisis program berikut dan perbaiki kesalahan-kesalahan pada program berikut
public Class Tabungan
{
Private string nama;
Private int NoRekening;
Private int saldo;
Private int pin;
Public Tabungan(String namaNasabah, intNoRek)
{
nama = namaNasabah;
noRekening = noRek;
saldo = 10000;
pin = 11111;
}
Public void simpanUang (int sal)
{
Saldo = saldo + sal;
}
Public void tarikUang(int jumlahTarikan)
{
Saldo = saldo jumlahTarikan;
}
Public int getSaldo()
{
Return saldo;
}
Public void setSaldo(int sal)
{
Saldo = sal;
}
Public void setPin (int pinBaru)
{
Pin = pinBaru;
}
Public static void main(String args[])
{
Int jumlahTarikan = 2000, jumlah simpanan = 5000;
Tabungan bls = new Tabungan(Barca, 12345);
System.out.println(Saldo awal : + bls.getSaldo);
Bls.tarikUang(JumlahTarikan);
System.out.println(Saldo setelah penarikan 2000
adalah : + bls.getSaldo());

}}

System.out.println(Saldo setelah penyetoran 5000


adalah : + bls.getSaldo());

2. Buat program yang menggambarkan penggunaan package class seperti pada diagram berikut!
Package1

Package2

Class Jenis Kendaraan

Class Bahan Bakar

{MethodA}

{MethodB}

DemoPackage
PenggunaanMethodAdanMethodB
(eg. Truk menggunakan Bahan Bakar
Solar)

MODUL II
PEWARISAN, POLYMORFISME DAN INTERFACE

1. Tujuan

Mahasiswa dapat menggunakan teknik pewarisan dan polymorfisme

Mahasiswa dapat membuat interface

2. Pembahasan
2.1 Teknik Pewarisan
Pewarisan dilakukan untuk membuat class baru (class turunan/subclass) yang masih
memiliki sifat atau spesifikasi dari class dimana ia diturunkan (Superclass). Untuk melakukan ini, Java
menyediakan keyword extends yang dapat dipakai pada waktu kita mendeklarasikan class. Berikut
adalah contoh implementasi pewarisan :
class A {
int x;
int y;
void tampilkanNilaixy()
{
System.out.println(Nilai x:
}
}

+ x +

, y: + y);

class B extends A {
int z;
void tampilkanJumlah() {
//subclass dapat mengakses member dari superclass
System.out.println(Jumlah : + (x+y+z));
}
}

2.2 Teknik Polymorfisme


Teknik polymorfisme digunakan untuk menyatakan satu nama yang merujuk (reference) ke
beberapa fungsi yang berbeda. Java menginterprestasikan polymorfisme dengan 3 cara yaitu:
Method overloading
Method dengan pewarisan
Method overriding dengan interface java
Berikut adalah contoh implementasi polymorfisme:
class A {
public void cetakKeLayar()
{
System.out.println(Method dari class A dipanggil);
}
}
class B extends A{
public void cetakKeLayar()
{
System.out.println(Method dari class B dipanggil);

}
}
class C extends A {
public void cetakKeLayar()
{
System.out.println(Method dari class C dipanggil);
}
}
class Demo()
{
public static void main(String[] args)
{
A obA;
B obB = new B();
C obC = new C();
obA = obB;
obA.cetakKeLayar();
obA = obC;
obA.cetakKeLayar();
}
}

2.3 Interface
Pendeklarasian interface secara umum adalah sebagai berikut:
Access-specifier interface NamaInterface{
Access-specifier tipe-data namaVariabel1 = value1;

Access-specifier tipe-data namaVariabelN = valueN;

Access-specifier tipe-data namaMethod1 (parameter1);

Access-specifier tipe-data namaMethodN(parameterN);


}

Penggunaan Interface
Access-specifier class NamaClass implements
Na aI terface, , Na aI terfaceN
{
//class implementation
}
3. Tugas
1. Buat program dengan teknik pewarisan atau polymorfisme untuk menyelesaikan
output berikut:
Nama
: Antonio
Usia
: 28
Bagian : Direktur
Gaji Pokok
: Rp. 10.000.000,00
Tunjangan Jabatan
: Rp 5.000.000,Fasilitas : Mobil Dinas, Rumah Dinas

Nama
: Jimmy
Usia
: 25
Bagian : Wakil Direktur
Gaji Pokok
: Rp. 7.000.000,00
Tunjangan Jabatan
: Rp 2.000.000,Fasilitas : Mobil Dinas
Nama
: Boy
Usia
: 25
Bagian : Staf
Gaji Pokok
: Rp. 1.500.000,00
Tunjangan Jabatan
:Fasilitas : 2. Analisa dan perbaiki kesalahan pada program-program berikut:
File: Suara.java
public interface Suara
{
Public voic berbicara();
Public void tidur();
}

File: Anjing.java
Public class Anjing implements Suara
{
//informasi data anjing
String warna;
float berat;
public Anjing(String w, float b);
{
Warna = w;
berat = b;
}
Public void berbicara()
{
System.out.println(Guk.gukguk);
}
Public void tidur()
System.out.Println(zzz..zzz....zzz);
}
}
public class TesSuara
{
Public static main(String args)
Anjing AirBuds = new Anjing(Coklat,20.4f)
AirBuds.berbicara;
AirBuds.tidur;
}
}

MODUL III
OPERASI INPUT-OUTPUT DAN
JAVA GRAPHIC USER INTERFACE
1. Tujuan

Mahasiswa memahami operasi input-ouput pada Java

Mahasiswa dapat menggunakan Java GUI

2. Pembahasan
Ada beberapa cara untuk mendapatkan input dari keyboard, dua diantaranya adalah
menggunakan BufferReader dan menggunakan JoptionPane untuk mendapatkan Input.
2.1 Menggunakan BufferReader untuk mendapatkan Input
Langkah-langkah yang diperlukan untuk mendapatkan input darikeyboard dengan
menggunakan BufferReader:
1. Tambahkan di bagian paling atas code Anda:
import java.io.*;

2. Tambahkan statement berikut:


BufferedReader dataIn = new BufferedReader(new
InputStreamReader( System.in) );

3. Deklarasikan variabel String temporary untuk mendapatkan input, dan gunakanfungsi readLine()
untuk mendapatkan input dari keyboard. Anda harusmengetikkannya di dalam blok try-catch:
try{
String temp = dataIn.readLine();
}
catch( IOException e ){
System.out.println(Error in getting input);
}

2.2 Menggunakan JoptionPane untuk mendapatkan Input


Cara lain untuk mendapatkan input dari user adalah dengan menggunakan classJoptionPane
yang didapatkan dari javax.swing package.JoptionPane memudahkanmemunculkan dialog box
standard yang memberikan kepada user sebuah nilai ataumenginformasikan sesuatu.Diberikan kode
berikut ini,
import javax.swing.JOptionPane;
public class GetInputFromKeyboard
{
public static void main( String[] args ){
String name = "";

name = JoptionPane.showInputDialog("Please enter your


name");
String msg = "Hello " + name + "!";
JOptionPane.showMessageDialog(null, msg);
}
}

Akan menghasilkan output,

2.3 Java GUI


The Java Foundation Class (JFC), merupakan bagian penting dari Java SDK, yang
termasukdalam koleksi dari API dimana dapat mempermudah pengembangan aplikasi JAVA GUI. JFC
termasuk diantara 5 bagian utama dari API yaitu AWT dan Swing. Tiga bagian yang lainnyadari API
adalah Java2D, Accessibility, dan Drag dan Drop. Semua itu membantu pengembangdalam
mendesain dan mengimplementasikan aplikasi visual yang lebih baik.
Berikut adalah cara termudah untuk membuat graphic user interface untuk menampilkan
kotak dialog dengan menggunakan Joptionpane.
import javax.swing.*;
public class TestDialog {
public static void main(String[] args)
{
JFrame frame = new JFrame("Contoh Tampilan frame di
Java");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();

JOptionPane.showConfirmDialog(frame, "Contoh dialog


konfirmasi...", "Title Konfirmasi",
JOptionPane.OK_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE);
}
}

Outputnya:

3.Tugas
Buat program untuk menghasilkan output seperti berikut:

MODUL IV
MEMBANGUN APLIKASI ANDROID SEDERHANA
DAN MENGENAL WIDGET

1. Tujuan:

Mahasiswa dapat membangun project baru


Mahasiswa dapat membuat konfigurasi emulator
Mahasiswa dapat menjalankan aplikasi
Mahasiswa dapat membuat GUI dan aplikasi sederhana

2. Pembahasan
2.1 Membangun Project Baru pada Eclipse

Untuk membangun project baru langkah-langkah yang harus dilakukan adalah seperti berikut.
Pada Eclipse,pilih menu File>New > AndroidApplicationProject.

Pada jendela berikutnya, isilah beberapa opsi pengaturan project.

1. Application Name : Nama aplikasi yang muncul nanti saat di Play Store dan
Settings>Manage Application List.
2. Project Name: Nama Project Eclipse.
3. Package name:Nama package dari aplikasi, nama package haruslah unik dalam satu
perangkat antara satu dengan program lainnya.
4. Target SDK : Target device yang ingin dijalankan untuk menggunakan aplikasi yang
akan di buat.
5. Compile With: Versi android yang digunakan untuk kompilasi project.
6. Minimum Required SDK: versi Android yang ingin dijalankan. Untuk aplikasi
handphone, pilih 2.3.3 (Ginger bread) atau Froyo, karena ini versi yang paling umum
digunakan di seluruh dunia.
Pada jendela konfigurasi project berikut, klik Next.

Pada jendela berikutnya pilih icon aplikasi yang akan digunakan, gunakan icon standar yang
dimiliki Android, Next.

Pada jendela berikutnya pilih model activity yang akan digunakan, pada praktikum ini pilih
Blank Activity dan klik Next.

Pada jendela terakhir, dilakukan pengaturan nama untuk Activity dan juga layoutnya. Setelah
selesai klik Finish.

Kemudian project akan diciptakan secara otomatis oleh Eclipse dengan aplikasi Hello World
sebagai aplikasi default.

2.3 Membuat Konfigurasi Emulator

Emulator atau Android Virtual Device (AVD) adalah perangkat untuk menguji
aplikasi android, tanpa menggunakan perangkat android sesungguhnya. Emulator dapat
dibuat untuk platform dan konfigurasi android yang berbeda-beda. Langkah-langkah untuk
membuat konfigurasi Android dilakukan di dalam menu Window, seperti berikut:

1. Pada Menu Windows>Preferences>Android> Pada SDK Location masukan


direktori instalasi android sdk pada komputer. Setelah selesai klik OK.

2. Kemudian pada menu Windows>Android Virtual Device Manager>pilih New.


3. Pada jendela dialog Create New Android Virtual Device, masukkan konfigurasi
AVD. Contohnya seperti berikut.

4. Untuk menguji AVD jalankan AVD Manager>pilih AVD> kemudian klik Start.
Kecepatan emulator ditampilkan tergantung pada konfigurasi AVD yang dibangun
dan spesifikasi perangkat keras yang digunakan.

2.3 Widget Dasar


ImageView dan ImageButton merupakan dua Android widget yang dapat disisipkan
suatu gambar. Kedua widget tersebut analog dengan TextView dan Button. Setiap widget
memiliki atribut android:src atau android:background (pada XML layout) untuk
menentukan gambar apa yang digunakan.
Gambar yang digunakan diambil dari resource drawable. ImageButton merupakan
subclass dari ImageView. ImageButton mirip dengan perilaku Button yang memiliki fitur
yang merespon even click. EditText (atau textBox) widget merupakan extension dari
TextView yangmengijinkan get dan set text untuk update.
Checkbox merupakan tipe tombol dengan 2 state yang bisa berupa checkedatau
unchecked.Radio button juga merupakan tipe tombol dengan 2 state yang bisa berupa
checkedatau unchecked. Ketika radio button di-unchecked, user dapat menekan atau mengklik tombol untuk men-check. Biasanya Radio button digunakan bersama dalam sebuah
RadioGroup. Jika beberapa radio buttons berada didalam radio group, men-check satu radio
button akan meng-uncheckslainnya. RadioButton merupakan turunan dari TextView.
Semua property standard TextView untuk font face, style, color, dsb. Juga bisa
digunakan untuk mengontrol tampilan radio button. Kita dapat memanggil fungsi
isChecked()pada RadioButton untuk mengetahui apakah di-select, toggle()untuk men-select
nya, dan seterusnya seperti halnya pada CheckBox.
Widget yang akan digunakan dapat didefinisikan dalam file layout .xml atau dapat
dipilih dari pallet yang telah tersedia pada lembar kerja eclipse dan properti widget dapat
diatur pada Properties.

Pallete bersi bermacammacam widget

Properties untuk mengatur


properti widget

3. 1. Tugas 1
1) Buat Emulator dengan nama MyPhone dan buat Aplikasi dengan nama Halo
Duniaseperti pada pembahasan. Perhatikan ketentuan berikut.

Project Name : HaloDunia

Application Name : HaloDunia

PackageName : modulpbo4.Tugas1

Create Activity : MainActivity

2) Ganti string Hello World dengan string berikut Halo nama_anda, selamat datang di
dunia Android. Edit file strings.xml pada folder res>values

Edit file
strings.xml

3.2. Tugas 2
Buat Project Baru dengan ketentuan sebagai berikut.

Project Name : LatihanGUI

Application Name : LatihanGUI

PackageName : modulpbo4.tugas2

Create Activity : MainActivity

Aplikasi LatihanGUI akan menampilkan beberapa widget dalam layout yang dilengkapi
dengan ScrollView. Ketik kode program berikut untuk membangun aplikasi LatihanGUI.
File activity_main.xml
<?xmlversion="1.0"encoding="utf-8"?>
<ScrollViewxmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:id="@+id/textNama"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nama Lengkap"
android:textSize="24sp"
android:textStyle="bold"
android:typeface="monospace"/>

<EditText
android:id="@+id/editNama"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:textSize="24dp"
android:typeface="monospace">
<requestFocus/>
</EditText>
<TextView
android:id="@+id/textEmail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Email"
android:textSize="24dp"
android:textStyle="bold"
android:typeface="monospace"/>
<EditText
android:id="@+id/editEmail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textEmailAddress"
android:textSize="24dp"
android:typeface="monospace"/>
<TextView
android:id="@+id/textJenisKelamin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Jenis Kelamin"
android:textSize="24dp"
android:typeface="monospace"/>
<RadioButton
android:id="@+id/radioLaki"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Laki-Laki"/>
<RadioButton
android:id="@+id/radioPerempuan"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Perempuan"/>
<TextView
android:id="@+id/textHobi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hobi"
android:textSize="24dp"
android:textStyle="bold"
android:typeface="monospace"/>

<CheckBox
android:id="@+id/checkBaca"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Membaca"/>
<CheckBox
android:id="@+id/checkMemancing"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Memancing"/>
<CheckBox
android:id="@+id/checkBersepeda"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Bersepeda"/>
<Button
android:id="@+id/btnOK"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="OK"/>
</LinearLayout>
</ScrollView>

File MainActivity.java
package modulpbo4.tugas2;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.TextView;
publicclass MainActivity extends Activity {
@Override
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText editNama = (EditText) findViewById(R.id.editNama);
final EditText editEmail = (EditText)
findViewById(R.id.editEmail);
final RadioButton radioLaki = (RadioButton)
findViewById(R.id.radioLaki);
final RadioButton radioPerempuan = (RadioButton)
findViewById(R.id.radioPerempuan);
final CheckBox checkBaca = (CheckBox)

findViewById(R.id.checkBaca);
final CheckBox checkMemancing = (CheckBox)
findViewById(R.id.checkMemancing);
final CheckBox checkBersepeda = (CheckBox)
findViewById(R.id.checkBersepeda);
Button btnOK = (Button) findViewById(R.id.btnOK);
TextView texthalo = (TextView)findViewById(R.id.texthalo);
btnOK.setOnClickListener(new View.OnClickListener() {
@Override
publicvoid onClick(View v) {
// TODO Auto-generated method stub
editNama.setText("Jokowi");
editEmail.setText("Joko@upr.ac.id");
radioLaki.setChecked(true);
checkBaca.setChecked(true);
checkMemancing.setChecked(true);
checkBersepeda.setChecked(true);
}
});
}
}

Jalankan aplikasi LatihanGUI.

3.3. Tugas
Buat Project Baru dengan ketentuan sebagai berikut.

Project Name : LatihanGUI2

Application Name : LatihanGUI

PackageName : modulpbo4.tugas3

Create Activity : MainActivity

Aplikasi LatihanGUI2 akan menampilkan layout berisi 1 widget TextView, 1 EditText dan 1
button. Widget TextView akan menampilkan text Masukan Nama Anda. Widget EditText
berfungsi untuk menerima inputan nama user. Kemudian pada button tertulis OK. Ketika
program dijalankan, user akan menginputkan namanya kemudian klik pada tombol OK.

Setelah itu akan ditampilkan dialog dalam bentuk Toast berisikan kalimat Halo senang
berjumpa dengan Anda, nama user yang telah diinputkan sebelumnya.

4. Pustaka
http://http://developer.android.com
Felker D.; Dobbs J, 2011, Android Application Development For Dummies, Wiley Publishing
Inc., USA

MODULV
INTENT

1. Tujuan

Mahasiswa dapat membangun aplikasi sederhana dengan menggunakan intent.

2. Pembahasan
Sebuah aplikasi android dapat berisi banyak activity. Activity merupakan potongan
kode executable yang menyajikan user interface secara visual dan berjalan selama
diperlukan. Untuk berpindah dari activity satu ke activity lainnya dilakukan dengan cara
mengeksekusi activity berikutnya melalui sebuah intent. Sehingga setiap activity dapat
berinteraksi satu dengan yang lainnya secara asynchronous.
Intent dapat dipanggil dengan menggunakan beberapa method berikut.
startActivity(intent)
sendBroadcast(intent)
startService(intent)
atau
bindService intent,

Untuk menjalankan sebuah activity


Untuk mengirimkan sebuah intent kepada komponen
BroadcaastReceiver
Untuk menghubungkan aplikasi dengan sebuah background Service

3. Tugas 1.
Buat sebuah aplikasi bernama MyFirstApp yang menampilkan sebuah edittext dan
button. Ketika edittext diisi dengan sebuah string dan tombol Send diklik, maka string
tersebut akan ditampilkan oleh activity lain, DisplayMessageActivity.
Ikuti langkah-langkah berikut untuk membangun aplikasi MyFirstApp. Buat sebuah
project dengan ketentuan seperti berikut.

Project Name : MyFirstApp


Application Name : MyfirstApp
PackageName : modulpbo5.tugas1
Create Activity : MainActivity

Ketik kode program berikut.


File activity_main.xml
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns: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:orientation="horizontal">
<EditTextandroid:id="@+id/edit_message"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:hint="@string/edit_message"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send"
android:onClick="sendMessage"/>
</LinearLayout>

File strings.xml
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<stringname="app_name">My First App</string>
<stringname="edit_message">Enter a message</string>
<stringname="button_send">Send</string>
<stringname="action_settings">Settings</string>
<stringname="title_activity_main">MainActivity</string>
<stringname="title_activity_display_message">My Message</string>
<stringname="hello_world">Hello world!</string>
</resources>

File MainActivity.java
packagemodulpbo5.tugas1;
import
import
import
import
import
import

android.app.Activity;
android.content.Intent;
android.os.Bundle;
android.view.Menu;
android.view.View;
android.widget.EditText;

publicclass MainActivity extends Activity {


publicfinalstatic String EXTRA_MESSAGE = "modulpbo6.myfirstapp.MESSAGE";
@Override
publicvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);}
@Override
publicboolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
returntrue;
}

/** Called when the user clicks the Send button */


publicvoid sendMessage(View view) {
// Do something in response to button
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText) findViewById(R.id.edit_message);
String message = editText.getText().toString();
intent.putExtra(EXTRA_MESSAGE, message);
startActivity(intent);
}
}

Kemudian buat activity baru dengan cara:


1. Klik New pada toolbar.
2. Pada jendela yang tampil, buka folder Android dan pilih AndroidActivity. Klik
Next.
3. Pilih BlankActivity dan klik Next.
4. Kemudian Isi rincian activity sepertian berikut:

Project: MyFirstApp

ActivityName:DisplayMessageActivity

Layout Name: activity_display_message

Title: My Message

Hierarchical Parent: modulpbo6.myfirstapp.MainActivity

Navigation Type: None

5. Klik Finish
Kemudian ketik kode program berikut.

File activity_display_message.xml
<RelativeLayoutxmlns: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=".DisplayMessageActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
/>

</RelativeLayout>

File DisplayMessageActivity.java
package modulpbo5.tugas1;
import
import
import
import
import
import
import
import

android.annotation.TargetApi;
android.app.Activity;
android.content.Intent;
android.os.Build;
android.os.Bundle;
android.support.v4.app.NavUtils;
android.view.MenuItem;
android.widget.TextView;

publicclass DisplayMessageActivity extends Activity {


//@SuppressLint("NewApi")
@Override
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_message);
// Show the Up button in the action bar.
// Get the message from the intent
Intent intent = getIntent();
String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
// Create the text view
TextView textView = new TextView(this);
textView.setTextSize(40);
textView.setText(message);
// Set the text view as the activity layout
setContentView(textView);
setupActionBar();
}
/**
* Set up the {@link android.app.ActionBar}, if the API is available.
*/
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
privatevoid setupActionBar() {
if (Build.VERSION.SDK_INT>= Build.VERSION_CODES.HONEYCOMB) {
getActionBar().setDisplayHomeAsUpEnabled(true);
}
}
@Override
publicboolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
// This ID represents the Home or Up button. In the case of
this
// activity, the Up button is shown. Use NavUtils to allow
users
// to navigate up one level in the application structure. For

// more details, see the Navigation pattern on Android Design:


//
//
http://developer.android.com/design/patterns/navigation.html#up-vs-back
//
NavUtils.navigateUpFromSameTask(this);
returntrue;
}
returnsuper.onOptionsItemSelected(item);
}
}

Jalankan Aplikasi MyFirstApp.

3.2. Tugas 2.

Buat sebuah project baru untuk aplikasi Login yang terdiri atas 2 activity dan gunakan Intent
untuk berinteraksi antara 2 activity tersebut. Aplikasi ini tidak perlu menggunakan database
karenaUser Name dan Password didefinisikan di dalam kode program. Bila User Namedan
Passwordyang diinputkan tepat maka ketika tombol login diklik akan ditampilkan activity
kedua berisi ucapan Welcome User Name, kemudian saat user klik pada tombol Back
maka layout login (activity 1) akan ditampilkan kembali. Sedangkan bila User Name dan
Password salah maka akan ditampilkan pesan Login Gagal (masih pada activity 1).
Pesan dalam
bentuk Toast
bila login gagal,
di activity1

Activity 1

Activity 2

4. Pustaka
http://http://developer.android.com

Anda mungkin juga menyukai