Anda di halaman 1dari 5

Belajar Android Membuat Zebra ListView

Dulu Awal tahun saya punya target untuk bisa posting artikel setiap hari, tetapi kenyataanya
hanya mampu sebulan sekali. Yah memang belum cukup kalau hanya baru niat saja harus
dilanjutkan dengan tindakan untuk mencapai target
Topik kali ini kita akan membahas tentang Zebra, tapi bukan hewan yah. Melainkan membuat
Zebra ListView pada android. Kalau permen saja ada yang zebra warnanya masak ListView
nggak boleh hehehe.
Untuk mempersingkat waktu mari kita mulai langkah-langkahnya.
1. Buat Project baru dengan nama “ZebraListView” dan Packagennya dengan nama
“com.batikmob.zebralistview”
2. Seperti biasaya yang kita urus pertamakali adalah bagian user interface untuk itu mari kita
buka main_activity.xml lalu ketikan kode berikut.
01 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
02
xmlns:tools="http://schemas.android.com/tools"
03
android:layout_width="match_parent"
04
android:layout_height="match_parent"
05
tools:context=".MainActivity" >
06
07
<TextView
08
android:id="@+id/textViewRowName"
09
android:layout_width="wrap_content"
10
android:layout_height="wrap_content"
11
android:layout_alignParentLeft="true"
12
android:layout_alignParentTop="true"
13
android:text="Food Price List"
14
android:textAppearance="?android:attr/textAppearanceMedium" />
15
16
<TextView
17
android:id="@+id/textView2"
18
android:layout_width="wrap_content"
19
android:layout_height="wrap_content"
20
android:layout_alignParentLeft="true"
21
android:layout_below="@+id/textViewRowName"
22
android:text="Name" />
23
24
<TextView
25
android:id="@+id/textView3"
26
android:layout_width="wrap_content"
27
android:layout_height="wrap_content"

zebralistview. Simpan dengan SpecialAdapater.xml 01 <?xml version="1. Buat Layout untuk isi dari listview simpan dengan nama row.0" encoding="utf-8"?> 02 <RelativeLayout xmlns:android="http://schemas.util.java 01 02 03 package com.android.com/apk/res/android" 03 android:id="@+id/RelativeLayout1" 04 android:layout_width="match_parent" 05 android:layout_height="match_parent" 06 android:orientation="vertical" > 07 08 <TextView 09 android:id="@+id/textViewRowName" 10 android:layout_width="wrap_content" 11 android:layout_height="wrap_content" 12 android:layout_alignParentLeft="true" 13 android:layout_alignParentTop="true" 14 android:text="Name" /> 15 16 <TextView 17 android:id="@+id/textViewRowPrice" 18 android:layout_width="wrap_content" 19 android:layout_height="wrap_content" 20 android:layout_alignParentRight="true" 21 android:layout_alignParentTop="true" 22 android:text="Price" /> 23 24 </RelativeLayout> 4.HashMap.batikmob.28 29 30 31 32 33 34 35 36 37 38 39 40 41 android:layout_alignBaseline="@+id/textView2" android:layout_alignBottom="@+id/textView2" android:layout_alignParentRight="true" android:text="Price" /> <ListView android:id="@+id/listViewMakanan" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/textView2" > </ListView> </RelativeLayout> 3. Buat class baru untuk adapter listview diaman dsini warna untuk baris listview ditentukan. . import java.

content. String>>(). ViewGroup parent) { 20 View view = super.widget.util. 21 int colorPos = position % colors. 09 import android.util. 13 public SpecialAdapter(Context context.ArrayList. 0x30FF0066}.listViewMakanan). ListView listviewFood.view. parent).SimpleAdapter.java lalu ketikan kode berikut 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 package com.List. listviewFood = (ListView) findViewById(R. populateListView().activity_main). } .setBackgroundColor(colors[colorPos]). resource. initData(). 24 } 25 } 5 Sekarang kita kebagian jantung dari aplikasi yaitu class MainActivity.getView(position. 22 view.onCreate(savedInstanceState). to). 07 import android. String>> 14 items.layout.View. import java.Context.batikmob. items. import android.Bundle.zebralistview. import android. @Override protected void onCreate(Bundle savedInstanceState) { super. 23 return view.os.util. int[] to) { 15 super(context. View convertView.Activity. import java. List<HashMap<String. 08 import android.ListView.length. from.ViewGroup. 10 11 public class SpecialAdapter extends SimpleAdapter { 12 private int[] colors = new int[] { 0x306666FF. String[] from. 16 } 17 18 @Override 19 public View getView(int position. public class MainActivity extends Activity { private ArrayList<HashMap<String. import android.app.04 import java.id.widget. String>> listmakanan = new ArrayList<HashMap<String. int resource. 05 06 import android.view. convertView. setContentView(R.HashMap.

id.textViewRowPrice }).put("name". listmakanan.setAdapter(adapter). String>(). return map.add(genHashMap("Juz Pembakar Semangat".row.add(genHashMap("Ayam Kremes". "30000")). "25000")).add(genHashMap("Ikan Gurame Bakar". } } 6. listmakanan. listmakanan.21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 private void initData(){ listmakanan. "22000")).put("price".layout. listviewFood. "30000")).add(genHashMap("Ayam Bakar Madu".id. "15000")). new int[] { R.new String[] {"name". listmakanan. } private HashMap<String. "15000")).textViewRowName. map. "17000")).String> map = new HashMap<String. } private void populateListView(){ SpecialAdapter adapter = new SpecialAdapter(this.String> genHashMap(String name. listmakanan. Sekarang mari kita Run Programnya . listmakanan.add(genHashMap("Ayam Goreng Pemuda".listmakanan. "25000")).add(genHashMap("Juz Anti Galau".add(genHashMap("Ikan Gurame Kipas". map.add(genHashMap("Juz Pemuda Idaman".add(genHashMap("Juz Jomblo". "20000")). R. price). listmakanan.R. name). String price){ HashMap<String. "price" }. listmakanan.