Cara Membuat ListView Dengan Android Studio

Cara Membuat ListView Dengan Android Studio
  • 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 dapat secara otomatis dimasukan ke dalam 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.

    Advertisement

    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 memasukkannya ke dalam ListView.

    Baca juga

    Menangani Android ListView Clicks

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

    Advertisement

    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 mendefinisikan 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.

    Advertisement
    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

    Satu pemikiran pada “Cara Membuat ListView Dengan Android Studio”

    Tinggalkan komentar