Pemrograman Mobile Android Praktik 4 - Event Handling

30
7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 1/30 LAPORAN PRAKTIKUM PEMROGRAMAN APLIKASI MOBILE JOB 4 – EVENT HANDLING Disusun oleh : N! : Dnn" Is#oe Nu"$oho NIM : %&%4&'(&)&)* PROGAM STUDI TEKNIK IN+ORMATIKA JURUSAN TEKNIK ELEKTRO POLITEKNIK NEGERI SEMARANG ()'4,()'- E.en# Hn/lin"

description

Event Handling

Transcript of Pemrograman Mobile Android Praktik 4 - Event Handling

Page 1: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 1/30

LAPORAN PRAKTIKUM

PEMROGRAMAN APLIKASI MOBILE

JOB 4 – EVENT HANDLING

Disusun oleh :

N! : Dnn" Is#oe Nu"$oho

NIM : %&%4&'(&)&)*

PROGAM STUDI TEKNIK IN+ORMATIKA

JURUSAN TEKNIK ELEKTRO

POLITEKNIK NEGERI SEMARANG

()'4,()'-

E.en# Hn/lin"

Page 2: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 2/30

Page 3: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 3/30

media AA8$ AA8 .1$ M03$ M($ gg &orbis$ ;A&$ 07%$ 05%$

%<$ M0

Messaging SMS dan MMS

;eb browser erdasarkan open source ;eb*it layout engine$ ditambah

dengan mesin &/ a)aScript 8hrome mendukung #M!

dan 8SS3.

Multi9touch Android memiliki dukungan asli untuk multi9touch yang

awalnya dibuat tersedia dalam handset seperti #8 #ero.

Multi9tasking 0engguna dapat melompat dari satu tugas ke yang lain dan

waktu yang sama berbagai aplikasi dapat berjalan secara

 bersamaan.

;idget

resiBable

;idget adalah resiBable$ sehingga pengguna dapat

memperluas mereka untuk menunjukkan lebih banyak konten

atau mengecilkan mereka untuk menghemat ruang

Multi9ahasa Mendukung satu arah dan teks bi9directional.

%8M %oogle 8loud Messaging +%8M, adalah layanan yang

memungkinkan pengembang mengirim data pesan singkat

kepada pengguna mereka pada perangkat Android$ tanpa

 perlu solusi sync proprietary.

;i9<i (irect Sebuah teknologi yang memungkinkan aplikasi menemukan

dan pasangan secara langsung$ melalui bandwidth tinggi

 peer9to9peer koneksi.

Android

eam

Sebuah teknologi berbasis 5<8 populer yang memungkinkan

 pengguna langsung berbagi$ hanya dengan menyentuh dua

 ponsel 5<89enabled bersama9sama.A2li1si An/$oi/ 

Aplikasi Android biasanya dikembangkan dalam bahasa a)a dengan menggunakan

Android S(*. Setelah dikembangkan$ aplikasi Android dapat dikemas dengan mudah

dan dijual keluar baik melalui toko seperti %oogle 0lay atau AmaBon Appstore.

*ekuatan Android ratusan juta perangkat mobile di lebih dari 1C- negara di seluruh

dunia. ni adalah dasar terinstal terbesar dari plat'orm mobile dan tumbuh cepat.

Setiap hari lebih dari 1 juta perangkat Android baru diakti'kan di seluruh dunia.

A$si#e1#u$ 

Sistem operasi Android adalah tumpukan komponen so'tware yang dibagi menjadi

lima bagian dan empat lapisan utama seperti yang ditunjukkan di bawah ini dalam

diagram arsitektur.

Page 4: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 4/30

Linu Ke$nel

(i bagian bawah lapisan adalah !inu" 9 !inu" 2.? dengan sekitar 11 patch. ni

menyediakan sistem 'ungsi dasar seperti manajemen proses$ manajemen memori$

manajemen perangkat seperti kamera$ keypad$ layar dll uga$ kernel menangani

semua hal yang !inu" benar9benar baik di seperti jaringan dan array yang luas dari

dri)er perangkat$ yang mengambil nyeri dari inter'acing dengan hardware peri'er.

Li5$$ies 

(i atas kernel !inu" ada satu set perpustakaan termasuk open9source ;eb*it browser 

;eb mesin$ libc perpustakaan terkenal$ basis data S>!ite yang merupakan repositori

yang berguna untuk penyimpanan dan berbagi data aplikasi$ perpustakaan untuk 

 bermain dan merekam audio dan )ideo$ SS! perpustakaan yang bertanggung jawab

untuk keamanan internet dll

An/$oi/ Run#i!e

ni adalah bagian ketiga dari arsitektur dan tersedia pada lapisan kedua dari bawah.

agian ini menyediakan komponen kunci yang disebut (al)ik &irtual Machine yang

merupakan jenis a)a &irtual Machine yang dirancang khusus dan dioptimalkan untuk 

Android. (al)ik &M meman'aatkan 'itur inti !inu" seperti manajemen memori dan

multi9threading$ yang intrinsik dalam bahasa a)a. (al)ik &M memungkinkan setiap

aplikasi Android untuk berjalan dalam prosesnya sendiri$ dengan contoh sendiri dari

mesin )irtual (al)ik. @untime Android juga menyediakan satu set inti perpustakaan

yang memungkinkan pengembang aplikasi Android untuk menulis aplikasi Android

menggunakan standar bahasa pemrograman a)a.A22li6#ion +$!e7o$1 

Page 5: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 5/30

!apisan Application <ramework menyediakan berbagai layanan tingkat tinggi untuk 

aplikasi dalam bentuk kelas a)a. 0engembang aplikasi yang diiBinkan untuk 

menggunakan layanan ini dalam aplikasi mereka.

A2li1si

Anda akan menemukan semua aplikasi Android di lapisan atas. Anda akan menulis

aplikasi yang akan diinstal pada lapisan ini saja. 8ontoh aplikasi tersebut *ontak 

uku$ rowser$ %ame dll

EVENT HANDLING

7)ents adalah cara yang sangat berguna untuk mendapatkan data dari interaksi

 pengguna dengan komponen interakti' dari aplikasi$ seperti tekanan pada tombol atau

 pada layar dan lainnya. Android <ramework Maintains adalah antrian kejadian yang

mana disimpan sebagai setiap kejadian dihapus dari antrian pada 'irst9in$ 'irst9out

+<<,. Anda bisa menangkap kejadian tersebut pada program anda dan

menanganinya sesuai kebutuhan.

erikut ini adalah tiga konsep yang berhubungan dengan Android 7)ent

Management:

1. 7)ent !isteners : *elas &iew yang terlibat dalam membangun %6 Android$ sama

&iew kelas menyediakan sejumlah 0endengar 7)ent. 7)ent !istener adalah objek 

yang menerima pemberitahuan bila acara happes.

2. 7)ent !isteners @egistrations : 7)ent @egistrations adalah proses dimana sebuah 7)ent

#andler akan terda'tar 7)ent !istener sehingga handler dipanggil saat 7)ent !istener 

kebakaran acara tersebut.

%& 7)ent #andlers : *etika suatu e)ent terjadi dan kami telah terda'tar dan e)ent listener 

untuk e)ent$ e)ent listener memanggil 7)ent #andler$ yang merupakan metode yang

 benar9benar menangani e)ent tersebut.

E.en# Lis#ene$s 8 E.en# Hn/le$s

7)ent #andler 7)ent !istener D (escription

on8lick+, n8lick!istener+,

his is called when the user either clicks or 

touches or 'ocuses upon any widget like button$

te"t$ image etc. Eou will use on8lick+, e)ent

handler to handle such e)ent.

on!ong8lick+, n!ong8lick!istener+,

his is called when the user either clicks or 

touches or 'ocuses upon any widget like button$

te"t$ image etc. 'or one or more seconds. Eou will

Page 6: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 6/30

use on!ong8lick+, e)ent handler to handle such

e)ent.

on<ocus8hange+, n<ocus8hange!istener+,

his is called when the widget looses its 'ocus ie.

user goes away 'rom the )iew item. Eou will use

on<ocus8hange+, e)ent handler to handle such

e)ent.

on*ey+, n<ocus8hange!istener+,

his is called when the user is 'ocused on the item

and presses or releases a hardware key on the

de)ice. Eou will use on*ey+, e)ent handler to

handle such e)ent.onouch+, nouch!istener+,

his is called when the user presses the key$

releases the key$ or any mo)ement gesture on the

screen. Eou will use onouch+, e)ent handler to

handle such e)ent.

onMenutem8lick+, nMenutem8lick!istener+,

his is called when the user selects a menu item.

Eou will use onMenutem8lick+, e)ent handler to

handle such e)ent.

UI LA9OUTS

&iew adalah kelas dasar untuk widget$ yang digunakan untuk membuat komponen

6 interakti' seperti tombol$ te"t 'ield$ dll. &iew%roup adalah subclass dari &iew dan

menyediakan wadah tak terlihat yang terus &iews lain atau &iew%roups lain dan

menentukan tata letak si'at mereka.

0ada tingkat ketiga kita memiliki layout yang berbeda yang subclass dari kelas

&iew%roup dan tata letak yang khas mende'inisikan struktur )isual untuk antarmuka

 pengguna Android dan dapat dibuat baik pada waktu berjalan dengan menggunakan

 benda9benda &iew &iew%roup atau Anda dapat menyatakan tata letak Anda

menggunakan 'ile =M! sederhana mainFlayout "ml yang terletak di res layout 'older 

dari proyek Anda. %6 berdasarkan layout dide'inisikan dalam 'ile =M!. ata letak 

mungkin berisi jenis widget seperti tombol$ label$ teks$ dan sebagainya.

Page 7: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 7/30

An/$oi/ Lou# T2es

Ada sejumlah !ayouts disediakan oleh Android yang akan digunakan di hampir semua

aplikasi Android untuk memberikan pandangan yang berbeda$ tampilan dan nuansa.

Lou# A##$i5u#es

Setiap tata letak memiliki seperangkat atribut yang menentukan si'at )isual tata letak 

itu. Ada beberapa atribut umum di antara semua layout dan mereka atribut lainnya

yang khusus untuk tata letak itu. erikut ini adalah atribut umum dan akan diterapkan

ke semua layout:

Page 8: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 8/30

Jenis T# Le#1 An/$oi/

Ada sejumlah !ayouts disediakan oleh Android yang akan Anda gunakan di hampir 

semua aplikasi Android untuk memberikan pandangan yang berbeda$ tampilan dan

nuansa.

S.

 5

!ayout D (scription

1 !inear !ayout

!inear!ayout adalah kelompok tampilan yang sejalan semua anak dalam

satu arah$ secara )ertikal maupun horiBontal.2 @elati)e !ayout

@elati)e!ayout adalah kelompok tampilan yang menampilkan tampilan

anak dalam posisi relati' 

3 able !ayout

able!ayout adalah suatu pandangan bahwa kelompok9kelompok 

tampilan dalam baris dan kolom.

4 Absolute !ayout

Absolute!ayout memungkinkan Anda untuk menentukan lokasi yang

tepat dari anak9anaknya.

Page 9: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 9/30

<rame !ayout

he <rame!ayout merupakan tempat di layar yang dapat Anda gunakan

untuk menampilkan satu tampilan.

? !ist &iew

!ist&iew adalah kelompok tampilan yang menampilkan da'tar item yang

dapat digulir 

%rid &iew

%rid&iew adalah &iew%roup yang menampilkan item dalam dua dimensi$

digulir jaringan

III& Al# /n Bhn

1. 08 *omputer !aptop

2. perating System ;indows

3. a)a (e)elopment *it

4. Android S(* 

. Android Studio.

IV& Ln"1h Ke$0

P$1#i1 '

0ada praktikum ini adalah membuat contoh dari implementasi e)ent handling pada

 progam android.

1. !angkah pertama yang dilakukan adalah membuat project baru dengan nama 49

7)ent#andling dengan menggunakan program Android Studio.

 2. *emudian langkah selanjutnya yaitu menuliskan kode program pada

MainActi)ity.ja)a seperti berikut :

package com.example.eventdemo;

import android.os.Bundle;import android.app.Activity;

Page 10: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 10/30

import android.view.Menu;import android.view.View;import android.widget.Button;import android.widget.TextView;

public class MainActivity extends Activity {

  @verride  protected void on!reate"Bundle saved#nstance$tate% {  super.on!reate"saved#nstance$tate%;  set!ontentView"&.layout.activity'main%;

 (())) *ind bot+ t+e buttons)))

  Button sButton , "Button% *indViewBy#d"&.id.button's%;  Button lButton , "Button% *indViewBy#d"&.id.button'l%;

 (( )) register click event wit+ *irst button )))

  sButton.setn!lick-istener"new View.n!lick-istener"% {  public void on!lick"View v% {  (( ))) *ind t+e text view ))  TextView txtView , "TextView% *indViewBy#d"&.id.text'id%;  (( )) c+ange text sie ))  txtView.setText$ie"/0%;  1  1%;

 (( )) register click event wit+ second button )))

  lButton.setn!lick-istener"new View.n!lick-istener"% {  public void on!lick"View v% {  (( ))) *ind t+e text view ))  TextView txtView , "TextView% *indViewBy#d"&.id.text'id%;  (( )) c+ange text sie ))  txtView.setText$ie"20%;  1  1%;

  1

  @verride  public boolean on!reateptionsMenu"Menu menu% {  getMenu#n*later"%.in*late"&.menu.main3 menu%;  return true;  1

 1

3. Selanjutnya pada acti)ityFmain."ml tuliskan kode program "ml sebagai berikut :

45xml version,6/.76 encoding,6ut*)86594-inear-ayout xmlns:android,6+ttp:((sc+emas.android.com(apk(res(android6

  android:layout'widt+,6*ill'parent6  android:layout'+eig+t,6*ill'parent6  android:orientation,6vertical6 9

  4Button android:id,6@id(button's6

  android:layout'+eig+t,6wrap'content6 android:layout'widt+,6matc+'parent6 android:text,6@string(button'small6(9

 4Button android:id,6@id(button'l6

  android:layout'+eig+t,6wrap'content6 android:layout'widt+,6matc+'parent6 

android:text,6@string(button'large6(9

Page 11: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 11/30

  4TextView  android:id,6@id(text'id6  android:layout'widt+,6wrap'content6  android:layout'+eig+t,6wrap'content6  android:capitalie,6c+aracters6  android:text,6@string(+ello'world6 (9

4(-inear-ayout9

4. 0ada direktori $es,.lues,s#$in"&!l dapat menggunakan kode program sebagai

 berikut untuk mende'inisikan dua constant baru.

45xml version,6/.76 encoding,6ut*)86594resources9

  4string name,6app'name69<vent=emo4(string9  4string name,6action'settings69$ettings4(string9  4string name,6+ello'world69>ello world?4(string9  4string name,6button'small69$mall ont4(string9  4string name,6button'large69-arge ont4(string9

 4(resources9

. erikut adalah de'ault content dari An/$oi/Mni;es#&!l

45xml version,6/.76 encoding,6ut*)86594mani*est xmlns:android,6+ttp:((sc+emas.android.com(apk(res(android6  package,6com.example.guidemo6  android:version!ode,6/6  android:versioname,6/.76 9

  4uses)sdk  android:min$dkVersion,686  android:target$dkVersion,6/6 (9

  4application  android:allowBackup,6true6  android:icon,6@drawable(ic'launc+er6  android:label,6@string(app'name6  android:t+eme,6@style(AppT+eme6 9  4activity  android:name,6com.example.guidemo.MainActivity6  android:label,6@string(app'name6 9  4intent)*ilter9  4action android:name,6android.intent.action.MA#6 (9

  4category android:name,6android.intent.category.-AC!><&6(9  4(intent)*ilter9

  4(activity9  4(application9

4(mani*est9

?. Selanjutnya untuk menjalankan program klik run app pada bagian menu bar atau

dengan menekan tombol Shi't G <1- pada keyboard.

. Akan muncul jendela choose de)ice untuk menampilkan emulator yang akan

digunakan untuk menjalankan aplikasi.

Page 12: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 12/30

/. #asil dari program di atas adalah sebagai berikut :

Page 13: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 13/30

*eterangan : 0ada saat tombol utton Small ditekan$ e"t&iew H#ello ;orldIJ

dalam ukuran kecil$ setelah tombol utton !arge ditekan$ e"t&iew H#ello

;orldIJ dalam ukuran besar.

P$1#i1 (

1. Membuat project baru masih tentang e)ent handling dengan nama 4 K 

7)ent(emo dengan menggunakan program adnroid studio.

2. 0ada tampilan awal$ akan muncul jendela dari program sebagai berikut :

Page 14: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 14/30

3. Selanjutnya menuliskan kode program ja)a untuk MinA6#i.i#&0.

package com.example.eventdemo;

import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.n!lick-istener;import android.widget.Button;import android.widget.TextView;

public class MainActivity extends Activity implements n!lick-istener {

  @verride  protected void on!reate"Bundle saved#nstance$tate% {  super.on!reate"saved#nstance$tate%;

  set!ontentView"&.layout.activity'main%; 

(())) *ind bot+ t+e buttons)))  Button sButton , "Button% *indViewBy#d"&.id.button's%;  Button lButton , "Button% *indViewBy#d"&.id.button'l%;

 

(( )) register click event wit+ *irst button )))  sButton.setn!lick-istener"t+is%;  (( )) register click event wit+ second button )))  lButton.setn!lick-istener"t+is%;  1

 (())) #mplement t+e n!lick-istener callback

  public void on!lick"View v% {  i*"v.get#d"% ,, &.id.button's%  { 

(( ))) *ind t+e text view ))  TextView txtView , "TextView% *indViewBy#d"&.id.text'id%;  (( )) c+ange text sie ))  txtView.setText$ie"/0%;  return;  1  i*"v.get#d"% ,, &.id.button'l%  { 

(( ))) *ind t+e text view ))  TextView txtView , "TextView% *indViewBy#d"&.id.text'id%;  (( )) c+ange text sie ))  txtView.setText$ie"20%;  return;  1

Page 15: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 15/30

  1

  @verride  public boolean on!reateptionsMenu"Menu menu% {  getMenu#n*later"%.in*late"&.menu.main3 menu%;  return true;  1

 1

4. 6ntuk setelahnya dapat menggunakan seperti pada program P$1#i1 ' yaitu 4 K 

7)ent#andling dimana tidak terdapat petubahan kode dari program tersebut.

 pada acti)ityFmain."ml tuliskan kode program "ml sebagai berikut :

45xml version,6/.76 encoding,6ut*)86594-inear-ayout xmlns:android,6+ttp:((sc+emas.android.com(apk(res(android6  android:layout'widt+,6*ill'parent6  android:layout'+eig+t,6*ill'parent6  android:orientation,6vertical6 9

  4Button android:id,6@id(button's6

  android:layout'+eig+t,6wrap'content6 android:layout'widt+,6matc+'parent6 android:text,6@string(button'small6(9

 4Button android:id,6@id(button'l6

  android:layout'+eig+t,6wrap'content6 android:layout'widt+,6matc+'parent6 android:text,6@string(button'large6(9

  4TextView

  android:id,6@id(text'id6  android:layout'widt+,6wrap'content6  android:layout'+eig+t,6wrap'content6  android:capitalie,6c+aracters6  android:text,6@string(+ello'world6 (9

4(-inear-ayout9

. 0ada direktori $es,.lues,s#$in"&!l dapat menggunakan kode program sebagai

 berikut untuk mende'inisikan dua constant baru.

45xml version,6/.76 encoding,6ut*)86594resources9

  4string name,6app'name69<vent=emo4(string9  4string name,6action'settings69$ettings4(string9  4string name,6+ello'world69>ello world?4(string9  4string name,6button'small69$mall ont4(string9  4string name,6button'large69-arge ont4(string9

 4(resources9

?. erikut adalah de'ault content dari An/$oi/Mni;es#&!l

45xml version,6/.76 encoding,6ut*)86594mani*est xmlns:android,6+ttp:((sc+emas.android.com(apk(res(android6  package,6com.example.guidemo6  android:version!ode,6/6

  android:versioname,6/.76 9

Page 16: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 16/30

  4uses)sdk  android:min$dkVersion,686  android:target$dkVersion,6/6 (9

  4application  android:allowBackup,6true6  android:icon,6@drawable(ic'launc+er6  android:label,6@string(app'name6  android:t+eme,6@style(AppT+eme6 9  4activity  android:name,6com.example.guidemo.MainActivity6  android:label,6@string(app'name6 9  4intent)*ilter9  4action android:name,6android.intent.action.MA#6 (9

  4category android:name,6android.intent.category.-AC!><&6(9  4(intent)*ilter9  4(activity9  4(application9

4(mani*est9

. Selanjutnya untuk menjalankan program klik run app pada bagian menu bar atau

dengan menekan tombol Shi't G <1- pada keyboard.

/. Akan muncul jendela choose de)ice untuk menampilkan emulator yang akan

digunakan untuk menjalankan aplikasi.

C. #asil dari program di atas adalah sebagai berikut :

Page 17: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 17/30

P$1#i1 %

1. Membuat project baru masih tentang e)ent handling dengan nama 4 K 

7)ent(emo2 dengan menggunakan program android studio.

Page 18: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 18/30

2. 0ada tampilan awal$ akan muncul jendela dari program sebagai berikut :

3. Selanjutnya menuliskan kode program ja)a untuk MinA6#i.i#&0.

package com.example.eventdemo;

import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.widget.Button;

import android.widget.TextView;

public class MainActivity extends Activity{

  @verride  protected void on!reate"Bundle saved#nstance$tate% {  super.on!reate"saved#nstance$tate%;  set!ontentView"&.layout.activity'main%;  1

 (())) #mplement t+e event +andler *or t+e *irst button.

  public void do$mall"View v%  {  (( ))) *ind t+e text view ))  TextView txtView , "TextView% *indViewBy#d"&.id.text'id%;

  (( )) c+ange text sie ))  txtView.setText$ie"/0%;

Page 19: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 19/30

  return;  1  (())) #mplement t+e event +andler *or t+e second button.  public void do-arge"View v%  {  (( ))) *ind t+e text view ))  TextView txtView , "TextView% *indViewBy#d"&.id.text'id%;  (( )) c+ange text sie ))  txtView.setText$ie"20%;  return;  1

  @verride  public boolean on!reateptionsMenu"Menu menu% {  getMenu#n*later"%.in*late"&.menu.main3 menu%;  return true;  1

 1

4. 6ntuk setelahnya dapat menggunakan seperti pada program P$1#i1 ' yaitu 4 K 

7)ent#andling dimana tidak terdapat petubahan kode dari program tersebut.

 pada acti)ityFmain."ml tuliskan kode program "ml sebagai berikut :

45xml version,6/.76 encoding,6ut*)86594-inear-ayout xmlns:android,6+ttp:((sc+emas.android.com(apk(res(android6  android:layout'widt+,6*ill'parent6  android:layout'+eig+t,6*ill'parent6  android:orientation,6vertical6 9

  4Button android:id,6@id(button's6

  android:layout'+eig+t,6wrap'content6 

android:layout'widt+,6matc+'parent6 android:text,6@string(button'small6

  android:on!lick,6do$mall6(9

 4Button android:id,6@id(button'l6

  android:layout'+eig+t,6wrap'content6 android:layout'widt+,6matc+'parent6 android:text,6@string(button'large6

  android:on!lick,6do-arge6(9

  4TextView  android:id,6@id(text'id6  android:layout'widt+,6wrap'content6

  android:layout'+eig+t,6wrap'content6  android:capitalie,6c+aracters6  android:text,6@string(+ello'world6 (9

4(-inear-ayout9

. 0ada direktori $es,.lues,s#$in"&!l dapat menggunakan kode program sebagai

 berikut untuk mende'inisikan dua constant baru.

45xml version,6/.76 encoding,6ut*)86594resources9

  4string name,6app'name69<vent=emo4(string9  4string name,6action'settings69$ettings4(string9  4string name,6+ello'world69>ello world?4(string9

Page 20: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 20/30

  4string name,6button'small69$mall ont4(string9  4string name,6button'large69-arge ont4(string9

 4(resources9

?. Selanjutnya untuk menjalankan program klik run app pada bagian menu bar atau

dengan menekan tombol Shi't G <1- pada keyboard.

. Akan muncul jendela choose de)ice untuk menampilkan emulator yang akan

digunakan untuk menjalankan aplikasi.

/. #asil dari program di atas adalah sebagai berikut :

Page 21: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 21/30

P$1#i1 4

1-. Membuat project baru masih tentang e)ent handling dengan nama 4 K 

7)ent(emo dengan menggunakan program adnroid studio.

11. 0ada tampilan awal$ akan muncul jendela dari program sebagai berikut :

Page 22: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 22/30

12. Selanjutnya menuliskan kode program ja)a untuk MinA6#i.i#&0.

package com.example.eventdemo;

import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.n!lick-istener;import android.widget.Button;import android.widget.TextView;

public class MainActivity extends Activity implements n!lick-istener {

  @verride  protected void on!reate"Bundle saved#nstance$tate% {  super.on!reate"saved#nstance$tate%;

  set!ontentView"&.layout.activity'main%; 

(())) *ind bot+ t+e buttons)))  Button sButton , "Button% *indViewBy#d"&.id.button's%;  Button lButton , "Button% *indViewBy#d"&.id.button'l%;

 

(( )) register click event wit+ *irst button )))  sButton.setn!lick-istener"t+is%;  (( )) register click event wit+ second button )))  lButton.setn!lick-istener"t+is%;  1

 (())) #mplement t+e n!lick-istener callback

  public void on!lick"View v% {  i*"v.get#d"% ,, &.id.button's%  { 

(( ))) *ind t+e text view ))  TextView txtView , "TextView% *indViewBy#d"&.id.text'id%;  (( )) c+ange text sie ))  txtView.setText$ie"/0%;  return;  1  i*"v.get#d"% ,, &.id.button'l%  { 

(( ))) *ind t+e text view ))  TextView txtView , "TextView% *indViewBy#d"&.id.text'id%;  (( )) c+ange text sie ))  txtView.setText$ie"20%;  return;  1

Page 23: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 23/30

  1

  @verride  public boolean on!reateptionsMenu"Menu menu% {  getMenu#n*later"%.in*late"&.menu.main3 menu%;  return true;  1

 1

13. 6ntuk setelahnya dapat menggunakan seperti pada program P$1#i1 ' yaitu 4 K 

7)ent#andling dimana tidak terdapat petubahan kode dari program tersebut.

 pada acti)ityFmain."ml tuliskan kode program "ml sebagai berikut :

45xml version,6/.76 encoding,6ut*)86594-inear-ayout xmlns:android,6+ttp:((sc+emas.android.com(apk(res(android6  android:layout'widt+,6*ill'parent6  android:layout'+eig+t,6*ill'parent6  android:orientation,6vertical6 9

  4Button android:id,6@id(button's6

  android:layout'+eig+t,6wrap'content6 android:layout'widt+,6matc+'parent6 android:text,6@string(button'small6(9

 4Button android:id,6@id(button'l6

  android:layout'+eig+t,6wrap'content6 android:layout'widt+,6matc+'parent6 android:text,6@string(button'large6(9

  4TextView

  android:id,6@id(text'id6  android:layout'widt+,6wrap'content6  android:layout'+eig+t,6wrap'content6  android:capitalie,6c+aracters6  android:text,6@string(+ello'world6 (9

4(-inear-ayout9

14. 0ada direktori $es,.lues,s#$in"&!l dapat menggunakan kode program sebagai

 berikut untuk mende'inisikan dua constant baru.

45xml version,6/.76 encoding,6ut*)86594resources9

  4string name,6app'name69<vent=emo4(string9  4string name,6action'settings69$ettings4(string9  4string name,6+ello'world69>ello world?4(string9  4string name,6button'small69$mall ont4(string9  4string name,6button'large69-arge ont4(string9

 4(resources9

1. erikut adalah de'ault content dari An/$oi/Mni;es#&!l

45xml version,6/.76 encoding,6ut*)86594mani*est xmlns:android,6+ttp:((sc+emas.android.com(apk(res(android6  package,6com.example.guidemo6  android:version!ode,6/6

  android:versioname,6/.76 9

Page 24: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 24/30

  4uses)sdk  android:min$dkVersion,686  android:target$dkVersion,6/6 (9

  4application  android:allowBackup,6true6  android:icon,6@drawable(ic'launc+er6  android:label,6@string(app'name6  android:t+eme,6@style(AppT+eme6 9  4activity  android:name,6com.example.guidemo.MainActivity6  android:label,6@string(app'name6 9  4intent)*ilter9  4action android:name,6android.intent.action.MA#6 (9

  4category android:name,6android.intent.category.-AC!><&6(9  4(intent)*ilter9  4(activity9  4(application9

4(mani*est9

1?. Selanjutnya untuk menjalankan program klik run app pada bagian menu bar atau

dengan menekan tombol Shi't G <1- pada keyboard.

1. Akan muncul jendela choose de)ice untuk menampilkan emulator yang akan

digunakan untuk menjalankan aplikasi.

1/. #asil dari program di atas adalah sebagai berikut :

Page 25: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 25/30

Page 26: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 26/30

C. 0ada tampilan awal$ akan muncul jendela dari program sebagai berikut :

1-. Selanjutnya menuliskan kode program ja)a untuk MinA6#i.i#&0.

package com.example.danangistu.D0'gridview;

import android.app.Activity;import android.support.v.app.ActionBarActivity;import android.os.Bundle;import android.view.Menu;import android.view.Menu#tem;

import android.widget.EridView;

public class MainActivity extends Activity {

  @verride  protected void on!reate"Bundle saved#nstance$tate% {  super.on!reate"saved#nstance$tate%;  set!ontentView"&.layout.activity'main%;

  EridView gridview , "EridView% *indViewBy#d"&.id.gridview%;  gridview.setAdapter"new #mageAdapter"t+is%%;  1

  @verride  public boolean on!reateptionsMenu"Menu menu% {

Page 27: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 27/30

  (( #n*late t+e menu; t+is adds items to t+e action bar i* it ispresent.  getMenu#n*later"%.in*late"&.menu.menu'main3 menu%;  return true;  11

11. Membuat kelas baru bernama mageAdapter.ja)a kemudian menuliskan kode

 program berikut :

package com.example.danangistu.D0'gridview;

import android.content.!ontext;import android.view.View;import android.view.ViewEroup;import android.widget.BaseAdapter;import android.widget.EridView;import android.widget.#mageView;

public class #mageAdapter extends BaseAdapter {

  private !ontext m!ontext;  (( !onstructor  public #mageAdapter"!ontext c% {  m!ontext , c;  1

  @verride  public int get!ount"% {  return mT+umb#ds.lengt+;  1

  @verride  public bDect get#tem"int position% {  return null;  1

  @verride  public long get#tem#d"int position% {  return 7;  1

  @verride  public View getView"int position3 View convertView3 ViewEroup parent%{  #mageView imageView;  i* "convertView ,, null% {  imageView , new #mageView"m!ontext%;  imageView.set-ayoutFarams"new EridView.-ayoutFarams"8G3 8G%%;  imageView.set$caleType"#mageView.$caleType.!<T<&'!&F%;

  imageView.setFadding"83 83 83 8%;  1 else {  imageView , "#mageView% convertView;  1  imageView.set#mage&esource"mT+umb#dsHpositionI%;  return imageView;  1  (( Jeep all #mages in array  public #ntegerHI mT+umb#ds , {  &.drawable.sample'23 &.drawable.sample'K3  &.drawable.sample'03 &.drawable.sample'G3  &.drawable.sample'L3 &.drawable.sample'3  &.drawable.sample'73 &.drawable.sample'/3  &.drawable.sample'23 &.drawable.sample'K3  &.drawable.sample'03 &.drawable.sample'G3

  &.drawable.sample'L3 &.drawable.sample'3  &.drawable.sample'73 &.drawable.sample'/3

Page 28: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 28/30

  &.drawable.sample'23 &.drawable.sample'K3  &.drawable.sample'03 &.drawable.sample'G3  &.drawable.sample'L3 &.drawable.sample'  1;1

 

12. Selanjutnya pada acti)ityFmain."ml tuliskan kode program "ml sebagai berikut :

4-inear-ayout xmlns:android,6+ttp:((sc+emas.android.com(apk(res(android6  xmlns:tools,6+ttp:((sc+emas.android.com(tools6  android:layout'widt+,6matc+'parent6  android:layout'+eig+t,6matc+'parent6android:padding-e*t,6@dimen(activity'+oriontal'margin6  android:padding&ig+t,6@dimen(activity'+oriontal'margin6  android:paddingTop,6@dimen(activity'vertical'margin6  android:paddingBottom,6@dimen(activity'vertical'margin6tools:context,6.MainActivity69

  4EridView xmlns:android,6+ttp:((sc+emas.android.com(apk(res(android6  android:id,6@id(gridview6

  android:layout'widt+,6*ill'parent6  android:layout'+eig+t,6*ill'parent6  android:columnidt+,6N7dp6  android:num!olumns,6auto'*it6  android:vertical$pacing,6/7dp6  android:+oriontal$pacing,6/7dp6  android:stretc+Mode,6columnidt+6  android:gravity,6center6  (9

4(-inear-ayout9

13. 0ada direktori $es,.lues,s#$in"&!l dapat menggunakan kode program sebagai

 berikut untuk mende'inisikan constant baru.

45xml version,6/.76 encoding,6ut*)86594resources9

  4string name,6app'name69O0 ) EridView4(string9  4string name,6+ello'world69>ello world?4(string9  4string name,6action'settings69$ettings4(string9

4(resources9

14. Selanjutnya untuk menjalankan program klik run app pada bagian menu bar atau

dengan menekan tombol Shi't G <1- pada keyboard.

1. Akan muncul jendela choose de)ice untuk menampilkan emulator yang akan

digunakan untuk menjalankan aplikasi.

Page 29: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 29/30

1?. #asil dari program di atas adalah sebagai berikut :

V& Kesi!2uln

0ada praktikum yang telah dilakukan dapat disimpulkan bahwa

Page 30: Pemrograman Mobile Android Praktik 4 - Event Handling

7/21/2019 Pemrograman Mobile Android Praktik 4 - Event Handling

http://slidepdf.com/reader/full/pemrograman-mobile-android-praktik-4-event-handling 30/30

1. 0ada aplikasi android sebuah 'orm yang dikenal sebagai acti)ity dapat ditampilkan

dengan model layout yang beragam$ diantaranya adalah linear layout$ relati)e

layout$ 'rame layout$ table layout$ absolute layout$ list )iew dan grid )iew.

2. 6ntuk menangkap interaksi user terhadap aplikasi yang berjalan dapat dilakukan

dengan mengimplementasikan action listener$ seperti on click listener$ on long

click listener$ on 'ocus change listener$ on key listener$ on touch listener$ dan on

menu item click listener.

3. 6ntuk model implementasi listener dapat dilakukan dengan beberapa metode

yaitu :

a, (engan menggunakan inner class anonim

 b, (engan menggunakan inner class bernama