Membuat CostumListView dan ListView Biasa
Halo…Teman-teman
Kembali lagi dengan saya sekarang saya akan membuat Tutorial LAGI tentang Cara
membuat CostumListView dan listView biasa
Apa
bedanya?
CostumlistView
biasanya menggunakan Gambar dan kita bisa menambahkan fitur lain di dalamnya
Adapun
ListView hanya tulisan dan tidak bisa dimasukkan fitur lain di dalamnya
untuk lebih jelasnya cek Video ini:
untuk lebih jelasnya cek Video ini:
Langsung saja ya… Cekidot :v
1).
Pertama,Buat lah Sebuah Projek Baru Dengan Nama CostumlistViewdanListView atau terserah anda
2).Lalu
masukklah ke Activity Main Lalu Tambahkan Widget ListView di dalamnya
<LinearLayout 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"
tools:context="com.ammarnavi.resepmakanan.Fragment.Home">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/lvResep">
</ListView>
</LinearLayout>
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.ammarnavi.resepmakanan.Fragment.Home">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/lvResep">
</ListView>
</LinearLayout>
*Jangan
Lupa kasih yang namanya id pada ListView nya
3).Lalu Buatlah sebuah xml baru dengan nama (misalnya)
list_item_resep
berikut cara membuat layout baru:
Jika sudah klik ok...
4).
Nah…Lalu masuk ke dalam list_item_resep tadi lalu masukkan sebuah imageView dan
TextView untuk Menampung gambar dan tulisan yang anda inginkan
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="86dp" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true"> <ImageView android:id="@+id/gbrKategori" android:layout_width="90dp" android:layout_height="70dp" android:src="@mipmap/ic_launcher" android:layout_gravity="center" android:layout_marginLeft="8dp"/> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/nama" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Resep" android:layout_gravity="center_horizontal" android:layout_marginLeft="17dp" android:textStyle="bold" android:textSize="20dp" android:layout_centerVertical="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginStart="17dp" /> </RelativeLayout> </LinearLayout> </RelativeLayout>
*Oh iya
jangan lupa tambah kan id pada gambar dan tulisannya
Maka
akan ditampilkan seperti ini
5).
Jika sudah, Buat lah sebuah Java Class baru dengan nama CostumListAdapter
Jika
sudah klik Ok
6).lalu
Masuk ke CostumListAdapter lalu ketikkan seperti ini
Jika
merah maka tekan alt + enter
Pilih Crate Constructor....
Pilih
yang Paling atas lalu klik ok
Lalu
akan Muncul seperti ini di codingan nya
public class IniCostum extends ArrayAdapter<String> { public IniCostum(Context context, int resource) { super(context, resource); } }
7).Lalu
edit semua jadi seperti ini
public class KategoriListGambar extends ArrayAdapter<String> { private final Activity iniContext; private final String[] menuJudul; private final Integer[] menuGambar public KategoriListGambar(Activity context, String[] menuJudul, Integer[] menuGambar) { super(context, R.layout.data_kategori,menuJudul); this.iniContext = context; this.menuJudul = menuJudul; this.menuGambar = menuGambar; } @Override public View getView(int i, View convertView, ViewGroup parent) LayoutInflater inflater = iniContext.getLayoutInflater(); View row = inflater.inflate(R.layout.data_kategori,null, true); TextView txtkate =(TextView)row.findViewById(R.id.nama); ImageView imgkate = (ImageView)row.findViewById(R.id.gbrKategori); txtkate.setText(menuJudul[i]); imgkate.setImageResource(menuGambar[i]); return row; } }
8).
Lalu masuk ke Main Activity lalu ketikkan seperti ini
public class ListBuahWithImage extends AppCompatActivity { String[] menuItem = {"Pisang", "Apel","Jeruk", "Anggur","Blueberri", "Ceri", "Strawberry", "Semangka", "Alpukat", "Buah Pir", "Lemon"}; Integer[] gbrItem = { R.drawable.banana, R.drawable.apple, R.drawable.orange, R.drawable.grapes, R.drawable.blueberries, R.drawable.cherries, R.drawable.strawberry, R.drawable.watermelon, R.drawable.avocado, R.drawable.pear, R.drawable.lemon }; ListView lsBuah; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_list_buah_with_image); lsBuah = (ListView)findViewById(R.id.listbuahImage); CostumListAdapter costumListAdapter = new
CostumListAdapter(this, menuItem, gbrItem); lsBuah.setAdapter(costumListAdapter); } }
*Sebelum
itu Masukkan dulu gambar pada folder drawable
9).Jika
sudah maka jalankan aplikasi nya dan Hasil nya seperti ini
Nah
kita sudah menyelesaikan membuat CostumListView maka kita akan Membuat ListView
Biasa
MEMBUAT ListView SEDERHANA
Masih
dalam satu projek tadi buatlah activity baru
1).
Buatlah sebuah Empty Activity Baru dengan nama ListView
Jika
sudah klik finish
2).
Jika sudah masuk ke activity_list_view dan tambahkan widget listView dan JANGAN
LUPA tambahkan id pada listview nya
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_list_buah"
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="com.ammarnavi.pengenalanbuah.ListBuah"
android:orientation="vertical">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/listBuah" />
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_list_buah"
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="com.ammarnavi.pengenalanbuah.ListBuah"
android:orientation="vertical">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/listBuah" />
</LinearLayout>
3).Lalu buat lah sebuah layout baru dengan nama list_item
*bagi yang lupa cara membuat layout baru bisa dilihat di cara membuat
CostumListView J
4).Lalu di dalam list_item, tambahkan widget textView untuk menampung
tulisan yang dimasukkan ke dalam string
<?xml version="1.0" encoding="utf-8"?>
<TextView android:text="TextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/label"
android:textStyle="bold"
android:textSize="30dp"
xmlns:android="http://schemas.android.com/apk/res/android" />
<TextView android:text="TextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/label"
android:textStyle="bold"
android:textSize="30dp"
xmlns:android="http://schemas.android.com/apk/res/android" />
5).
Lalu kenalkan listView dan yang lain-lainya di dalam class ListView.java
public class ListBuah extends AppCompatActivity {
//deklarasi listView
ListView lsBuah;
//membuat array namabuah
String namaBuah[]={
"Pisang",
"Apel",
"Blueberri",
"Ceri",
"Jeruk",
"Alpukat"
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_buah);
lsBuah = (ListView)findViewById(R.id.listBuah);
//membuat array adapter untuk menampung data nama buah
ArrayAdapter adapter = new ArrayAdapter<String>(this,R.layout.list_item, namaBuah);
//menampilkan data nama buah melalui adapter
lsBuah.setAdapter(adapter);
//menampilkan aksi ketika di klik
lsBuah.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int i, long id) {
if (i == 1){
startActivity(new Intent(getApplicationContext(),ApelActivity.class));
finish();
}
}
});
}
}
//deklarasi listView
ListView lsBuah;
//membuat array namabuah
String namaBuah[]={
"Pisang",
"Apel",
"Blueberri",
"Ceri",
"Jeruk",
"Alpukat"
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_buah);
lsBuah = (ListView)findViewById(R.id.listBuah);
//membuat array adapter untuk menampung data nama buah
ArrayAdapter adapter = new ArrayAdapter<String>(this,R.layout.list_item, namaBuah);
//menampilkan data nama buah melalui adapter
lsBuah.setAdapter(adapter);
//menampilkan aksi ketika di klik
lsBuah.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int i, long id) {
if (i == 1){
startActivity(new Intent(getApplicationContext(),ApelActivity.class));
finish();
}
}
});
}
}
*setOnItemClickListener
digunakan supaya listView yang kita buat bisa di tekan dan pindah ke activity
lain
6).jika
sudah run aplikasi nya maka akan terlihat seperti ini:

1 komentar:
halo, Ammar
artikel anda sangat bagus dan bermanfaat, tolong izinkan kami untuk
bisa mengunggah artikel anda ke blog NetVlops karena anda adalah salah satu dari anggota netvlops,
semoga allah memberkatimu
terimakasih,
Regard,
Admin2NetVlops
Posting Komentar