Sorting Array pada ListView

No comments
Sebelumnya saya sudah menulis tentang simple listview yang menampilkan nama buah secara acak kedalam listview yang sudah disediakan. Pada kesempatan kali ini, saya akan membuat lanjutan dari aplikasi tersebut dengan menambahkan fitur sorting secara alphabet.

String[] buah = new String[]{"Apel","Nangka","Belimbing","Jambu","Pisang","Jeruk","Mangga","Duren"};

Jika diperhatikan, array buah tersebut masih dalam keadaan acak, untuk itu saya akan menambahkan satu tombol untuk mengurutkan buah, berikut layout yang saya tambahkan.

Gambar 1: Layout 
Pada tombol sort, tambahkan onlclick listener sebagai berikut.


 buttonSort.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Arrays.sort(buah, String.CASE_INSENSITIVE_ORDER);
                simplelist.setAdapter(adapterbuah);
            }
        });

Jadi pada saat tombol sort ditekan, maka array buah akan diatur ulang menggunakan Arrays.sort kemudian set kembali listview dengan adapter yang baru.

Gambar 2: Tampilan Sebelum Sort
Gambar 3: Tampilan Sesudah Sort
Demikian turorial singkat ini, semoga bermanfaat, sampai bertemu ditopik selanjutnya.

Source Code : Github

No comments :

Post a Comment

Membuat Simple List View

No comments
ListView digunakan untuk menampilkan content berupa list yang ditampilkan dilayar. Contohnya, saya memiliki sebuah array buah.

String[] buah = new String[]{"Apel","Nangka","Belimbing","Jambu","Pisang","Jeruk","Mangga","Duren"};


Array buah ini akan ditampilkan kedalam listview sederhana yang berisi text buah tersebut. Langkah pertama yang harus dilakukan adalah menambahkan listview pada layout project android.

Gambar 1. Layout ListView
Seperti gambar diatas, cukup tambahkan ListView kedalam Layout, sehingga jika dilihat file xml seperti code dibawah ini.

<RelativeLayout 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" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
    <ListView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/listView"
        android:layout_alignParentTop="true"
        android:layout_alignParentStart="true" />
</RelativeLayout>


Setelah menambahkan listview pada layout yang dibuat, langkah selanjutnya adalah memanipulasi adapter listview pada method onCreate.

final ListView simplelist = (ListView) findViewById(R.id.listView);
ArrayAdapter<String> adapterbuah = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,buah);

Perhatikan code diatas, pada line ArrayAdapter terdapat variable simple_list_item_1, ini merupakan layout bawaan dari android, ada beberapa tipe simple_list yang disediakan, karena saya hanya menampilkan 1 kata saja pada setiap list, cukup menggunakan simple list type 1. Setelah menentukan layout simple list, jangan lupa untuk mencantumkan array buah yang sudah dibuat.

simplelist.setAdapter(adapterbuah);

Kemudian set adapter untuk listview yang kita buat dengan code diatas.

Jika anda ingin menambahkan action ketika item tersebut diklik, tambahkan listener onClick pada listview yang kita buat.

simplelist.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                int itemposition = position;
                String value = (String) simplelist.getItemAtPosition(position);
                Toast.makeText(getApplicationContext(),"Position : "+position+" Value: "+value,Toast.LENGTH_SHORT).show();
            }
        });
Contoh yang saya buat diatas, ketika saya menekan item pada listview, saya buat agar menampilkan posisi dan nama buah yang saya pilih. Seperti gambar dibawah ini.
Gambar 2 : SimpleListView, Menampilkan alert.

Sekian tutorial singkat tentang simple listview, sampai bertemu di topik selanjutnya.

Source Code lengkap dapat diunduh di : Github

No comments :

Post a Comment