Kita akan membahas mengenai cara membuat sebuah ListView sederhana dengan Android Studio dan meluncurkan sebuah Activity baru dari memilih sebuah daftar item.

Apakah ListView Android?

ListView merupakan sebuah pandangan / tinjauan yang mengelompokan sejumlah item dan menampilkannya dalam list / daftar vertikal yang dapat di scroll.

Daftar item ini daat secara otomatis dimasukan kedalam daftar menggunakan sebuah Adapter yang menarik isi / konten dari sebuah sumber array atau database.

Ini merupakan komponen UI dasar dan paling dapat digunakan dalam Android. Penggunaan umum paling jamak termasuk menampilkan data dalam bentuk sebuah daftar vertikal scroll.

Menggunakan sebuah Adapter

Sebuah Adapter sebenarnya menjembatani komponen UI dan sumber data yang mengisi data kedalam komponen UI.

Adapter menampung data dan mengirim data ke adapter view, dan view dapat mengambil data dari adapter view dan menampilkan data pada view berbeda seperti sebuah spinner, list view, grid view dan lain sebagainya.

Adapter menarik sejumlah item keluar dari sebuah data sumber, sebuah array, dan merubah setiap item kedalam sebuah view dan kemudian memasukannya kedalam ListView.

Baca juga

Menangani Android ListView Clicks

ListView dan GridView merupakan subkelas dari AdapterView dan mereka dapat di isi dengan memasukannya kedalam sebuah Adapter, yang kemudian mengambil dara dari sumber eksternal dan membuat sebuah View dan menampilkan setiap data entry. Adapter umum adalah ArrayAdapter, BaseAdapter, CursorAdapter, SimpleCursorAdapter, SpinnerAdapter, dan WrapperListAdapter.

Metode onListItemClick() digunakan untuk memproses semua klik pada item ListView Android. Metode ini menerima 4 parameter.

  • ListView : ListView berisi view-view item.
  • View : View item secara spesifik yang telah dipilih.
  • Position / Posisi : Adalah Position dari item yang telah di pilih di array. Ingat bahwa array merupakan nol indeks, maka item pertama dari array ada pada posisi 0.
  • Id : Merupakan ID dari item yang dipilih. Merupakan hal penting ketika mengambil data dari sebuah database yang dapat anda gunakan ID untuk mengambil item dari database.

Contoh Struktur Project ListView Android

Cara Membuat ListView Dengan Android Studio

Mari kita memulainya dengan mendifinisikan file sumber untuk menyimpan semua daftar label item. Jadi kita membuat sebuah file XML dibagian folder value dan namakan sebagai strings.xml dan paste kode berikut.

strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="teams">
<item>India</item>
<item>South Africa</item>
<item>Australia</item>
<item>England</item>
<item>New Zealand</item>
<item>Sri Lanka</item>
<item>Pakistan</item>
<item>West Indies</item>
<item>Bangladesh</item>
<item>Ireland</item>
</string-array>
</resources>

Setiap daftar view item akan dihadirkan oleh sebuah layout xml, maka definisikan layout xml terdiri dari sebuah textview sebagai berikut.

list_item.xml

<?xml version="1.0" encoding="utf-8"?>
<!-- Single List Item Design -->
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/textview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dip"
android:textSize="16dip"
android:textStyle="bold" >
</TextView>

Kode berikut menunjukkan bagaimana cara import sumber-sumber data xml dan menyimpannya dalam data di ikuti dengan memasukan mereka ke adapter.

// storing string resources into Array
String[] teams = getResources().getStringArray(R.array.teams);

// Binding resources Array to ListAdapter
this.setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, R.id.textview, teams));

Dalam kode berikut kita akan ‘memanen’ nilai (Value) data dari item yang telah dipilih dan melewatinya sebagai sebuah bundle untuk ke activity selanjutnya menggunakan intents.

MainActivity.java
package abibakar.club.listview;


import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;

public class MainActivity extends ListActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// storing string resources into Array
String[] teams = getResources().getStringArray(R.array.teams);

// Binding resources Array to ListAdapter
this.setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, R.id.textview, teams));

ListView lv = getListView();

// listening to single list item on click
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {

// selected item
String team = ((TextView) view).getText().toString();

// Launching new Activity on selecting single List Item
Intent i = new Intent(getApplicationContext(), SecondActivity.class);
// sending data to new activity
i.putExtra("team", team);
startActivity(i);

}
});
}
}

Kelas SecondActivity mengambil label teks dari daftar item yang telah dipilih dan menampilkannya dalam sebuah textview seperti yang di tunjukkan dalam kode sniper berikut.

SecondActivity.java
package abibakar.club.listview;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;

public class SecondActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
TextView txtProduct = (TextView) findViewById(R.id.team_label);

Intent i = getIntent();
// getting attached intent data
String product = i.getStringExtra("team");
// displaying selected product name
txtProduct.setText(product);
}
}

Berikut ini merupakan hasil dari aplikasi yang sudah menggunakan ListView dengan Android Studio.

Cara Membuat ListView Android Studio

LEAVE A REPLY

Please enter your comment!
Please enter your name here