mobilea_tugas4_1404505038
TRANSCRIPT
-
8/18/2019 MobileA_Tugas4_1404505038
1/11
PEMROGRAMAN MOBILE (A)
“APLIKASI TOP 10 MAKANAN KHAS BALI”
PENGGUNAAN LISTVIEW CUSTOM ADAPTER
Oleh :
Putu Wahyu Saputra
140450503
!E"NOLOGI IN#ORMASI
#A"$L!AS !E"NI"
$NI%ERSI!AS $&A'ANA
01
-
8/18/2019 MobileA_Tugas4_1404505038
2/11
Apl*+a,* !-p 10 Ma+a.a. "ha, Bal*
Pe.//u.aa. L*,t%*e u,t-2 Aapter
ListView adalah us! "#$!%a& 'ada A#d!("d )a#* +#a+'"l,a# "$+-"$+ da!"
s,u+'ula# da%$a! )a#* $!susu# .!.a!"s , .a/ah a$au , sa+'"#* d#*a# $a+'"la#
)a#* da'a$ s&!(ll ListView +#a+'"l,a# "$+-"$+ da!" sua$u Array a$au List a$au
Query Database )a#* d"ad",a# da$a +(dl s.a*a" "$+ da!" ListView Ta+'"la# da!"
ListView sd!ha#a s'!$" .!",u$ "#"
Adapter adalah &lass )a#* +#*a$u! "$+-"$+ 'ada ListView Adapter
+#*a$u! resource view 'ada s$"a' "$+ da!" ListView Resource 2"/ 'ada ListView
)a#* ada 'ada s.uah $a+'"la# la)a! s.uah a'l",as" ++"l"," u+lah resource view
)a#* $$a' ssua" d#*a# "$+ )a#* $a+'a, 'ada la)a! Pada ListView d#*a#
$a+'"la# s&!(ll3 resourve view a,a# d"*u#a,a# s&a!a .!ula#* 4reusable5 d#*a#
+#*a$u! "$+ )a#* $a+'a, da# )a#* $!s+.u#)" 'ada ListView Adapter u*a
+#*a$u! da$a +(dl da!" s$"a' "$+ ListView S.uah da$a +(dl a,a# d"a$u!
+#ad" s.uah "$+ da!" ListView
1 Pr-/ra2 Apl*+a,* !-p 10 Ma+a.a. "ha, Bal*
a) MainActivity.java
B!",u$ "#" +!u'a,a# '!(*!a+ MainActivity.java3 d"+a#a d"dala+#)a
+#**u#a,a# .ahasa '+!(*!a+a# a2a S&a!a d%aul$3 '!(*!a+ "#" ++"l","
,las a,$"2"$as da# .!ala# ,$",a a'l",as" d"lu#&u!,a# d#*a# +#**u#a,a#
a'' "&(# Pada a'l",as" "#"3 '!(*!a+ MainActivity.java d"$a+.ah,a# ..!a'a
+$h(d u#$u, +#ala#,a# '!(ss 'ada '#**u#aa# ListView Custom Adapter
package wahyusaputra.top10makanankhasbali;
import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.support.v7.widget.Toolbar;import android.view.Menu;import android.view.Menutem;import android.widget.!ist"iew;
public class MainActivity extends AppCompatActivity $
-
8/18/2019 MobileA_Tugas4_1404505038
3/11
!ist"iew listView; int%& gambar_makanan_resource ' $(.mipmap.gmbr_1) (.mipmap.gmbr_2 )(.mipmap.gmbr_3 ) (.mipmap.gmbr_4) (.mipmap.gmbr_5 ) (.mipmap.gmbr_6 ) (.mipmap.gmbr_7 ) (.mipmap.gmbr_8 ) (.mipmap.gmbr_9 ) (.mipmap.gmbr_10 *; +tring%& nama_makanan;
+tring%& nilai_makanan; MakananAdapter adapter;
,-verride protected void onCreateBundle savednstance+tate/ $ super.onCreatesavednstance+tate/; setContent"iew(.layout.activity_main/; Toolbar toolbar ' Toolbar/ ind"iewByd(.id.toolbar /; set+upportActionBartoolbar/; listView ' !ist"iew/ ind"iewByd(.id.list_view /; nama_makanan 'get(esources/.get+tringArray(.array.nama_makanan/; nilai_makanan 'get(esources/.get+tringArray(.array.nilai_makanan/; int i ' 0;
adapter ' new MakananAdaptergetApplicationContet/)(.layout.row_layout/; listView.setAdapteradapter/; for +tring nama 2 nama_makanan/ $ 3ataMakanan4rovider dataMakanan ' new3ataMakanan4rovidergambar_makanan_resource%i&) nama) nilai_makanan%i&/; adapter.adddataMakanan/; i55; * *
,-verride public boolean onCreate-ptionsMenuMenu menu/ $ getMenunlater/.inlate(.menu. menu_main) menu/;
return true; *
,-verride public boolean on-ptionstem+electedMenutem item/ $ int id ' item.gettemd/; if id '' (.id.action_settings/ $ return true; *
return super.on-ptionstem+electeditem/; **
Pr-/ra2 1 MainActivity.java
P!(*!a+ 1 adalah '!(*!a+ Ma"#A&$"2"$)a2a3 +!u'a,a# ,las )a#*
+#ala#,a# '!(ss a$au %u#*s" da!" a'l",as" T(' 10 Ma,a#a# Khas Bal"
-
8/18/2019 MobileA_Tugas4_1404505038
4/11
b) DataMakananrovider.java
B!",u$ "#" +!u'a,a# '!(*!a+ DataMakananrovider.java3 d"+a#a
d"dala+#)a +#**u#a,a# .ahasa '+!(*!a+a# a2a
package wahyusaputra.top10makanankhasbali;
public class 3ataMakanan4rovider $ private int gambar_makanan_resource; private +tring nama_makanan; private +tring nilai_makanan;
public +tring get6ilaimakanan/ $ return nilai_makanan; *
public 3ataMakanan4roviderint gambarmakananresource) +tringnamamakanan) +tring nilaimakanan/ $
this.set8ambarmakananresourcegambarmakananresource/; this.set6amamakanannamamakanan/; this.set6ilaimakanannilaimakanan/; *
public void set6ilaimakanan+tring nilaimakanan/ $ this.nilai_makanan ' nilaimakanan; *
public +tring get6amamakanan/ $ return nama_makanan; *
public void set6amamakanan+tring namamakanan/ $ this.nama_makanan ' namamakanan;
*
public int get8ambarmakananresource/ $ return gambar_makanan_resource; *
public void set8ambarmakananresourceint gambarmakananresource/$ this.gambar_makanan_resource ' gambarmakananresource; **
Pr-/ra2 DataMakananrovider.java
-
8/18/2019 MobileA_Tugas4_1404505038
5/11
c) MakananAdapter.java
B!",u$ "#" +!u'a,a# '!(*!a+ MakananAdapter.java3 d"+a#a
d"dala+#)a u*a +#**u#a,a# .ahasa '+!(*!a+a# a2a
package wahyusaputra.top10makanankhasbali;
import android.content.Contet;import android.view.!ayoutnlater;import android.view."iew;import android.view."iew8roup;import android.widget.ArrayAdapter;import android.widget.mage"iew;import android.widget.Tet"iew;
import 9ava.util.Array!ist;import 9ava.util.!ist;
public class MakananAdapter extends ArrayAdapter $ !ist list ' new Array!ist/;
public MakananAdapterContet contet) int resource/ $ supercontet) resource/; *
static class 3ata:andler $ mage"iew Gambar; Tet"iew Nama; Tet"iew Nilai; *
,-verride public void add-b9ect ob9ect/ $
super.addob9ect/; list.addob9ect/; *
,-verride public int getCount/ $ return this.list.sie/; *
,-verride public -b9ect gettemint position/ $ return this.list.getposition/; *
,-verride
public "iew get"iewint position) "iew convert"iew) "iew8roupparent/ $ "iew row; row ' convert"iew; 3ata:andler handler; if convert"iew '' null/ $ !ayoutnlater inlater ' !ayoutnlater/this.getContet/.get+ystem+erviceContet.LA!"#_$%&LA#'(_)'(*$+' /; row ' inlater.inlate(.layout.row_layout) parent) false/;
-
8/18/2019 MobileA_Tugas4_1404505038
6/11
handler ' new 3ata:andler/; handler.Gambar ' mage"iew/row.ind"iewByd(.id.gambar_makanan/; handler. Nama ' Tet"iew/row.ind"iewByd(.id.nama_makanan/; handler. Nilai ' Tet"iew/
row.ind"iewByd(.id.nilai_makanan/; row.setTaghandler/; * else $ handler ' 3ata:andler/ row.getTag/; * 3ataMakanan4rovider data4rovider; data4rovider ' 3ataMakanan4rovider/ this.gettemposition/;
handler.Gambar.setmage(esourcedata4rovider.get8ambarmakananresource//; handler. Nama.setTetdata4rovider.get6amamakanan//; handler. Nilai.setTetdata4rovider.get6ilaimakanan//;
return row; *
*Pr-/ra2 3 MakananAdapter.java
d) Activity!Main."ml
B!",u$ "#" +!u'a,a# '!(*!a+ activity!main."ml 3 activity!main."ml
adalah %"l )a#* $!sd"a d" !s 6 la)(u$ d"!&$(!)3 )a#* d"!%!#s",a# (lh
a'l",as" ,$",a ++.a#*u# inter#ace
-
8/18/2019 MobileA_Tugas4_1404505038
7/11
e) Content!Main."ml
B!",u$ "#" +!u'a,a# '!(*!a+ content!main."ml 3 content!main."ml
+!u'a,a# %"l )a#* sa+a d#*a# activity!main."ml Pada content!main."ml
"#"3 #a#$"#)a ,"$a a,a# ++(d"%",as" %"l "#" sa#*a$ s!"#* ,a!#a u#$u,
+#*u.ah $a$a l$a, da!" a'l",as"
-
8/18/2019 MobileA_Tugas4_1404505038
8/11
android &la%out_width="106dp" android &la%out_height="06dp" android &la%out_to8ight/f="-id'gambar_makanan" android &gravit%="center" android &text="Nama makanan" android &text#olor="4999999"
android &text(t%le="bold" >=
=
-
8/18/2019 MobileA_Tugas4_1404505038
9/11
10item = 10item = 10item = 10item = string!arra%=resources=
Pr-/ra2 strin$.java
-
8/18/2019 MobileA_Tugas4_1404505038
10/11
!a2p*la. Apl*+a,* Mata "ul*ah #a6-r*t
a) Ta+'"la# 'ada 'mulator
'mulator )a#* sa)a *u#a,a# u#$u, +#ala#,a# has"l run 'ada A#d!("d
S$ud"( adalah (enymotion .!",u$ $a+'"la##)a
Ga27ar 1 Ta+'"la# 'ada 'mulator (enymotion
-
8/18/2019 MobileA_Tugas4_1404505038
11/11
b) Ta+'"la# 'ada Desi$n A#d!("d S$ud"(
Ga27ar Ta+'"la# 'ada Desi$n A#d!("d S$ud"(