Pages

Membuat Spinner pada Android

Spinner merupakan view yang memiliki fungsi yang sama dengan dropdown menu pada aplikasi, ketika pengguna meng-klik spinner ini maka akan tampil beberapa pilihan menu. Sehingga spinner biasa digunakan oleh programmer untuk menampilkan menu yang akan disajikan.

Selain itu spinner dikenal sebagai salah satu widget yang hampir mirip dengan listview, hanya perbedaannya listview-nya menyerupai combo, kalau kita yang terbiasa membuat program dengan visual basic pasti mengenal dengan yang namanya combo list.

Langsung saja kita buat programnya

main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/selection"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        />
  
    <Spinner android:id="@+id/spinner"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:drawSelectorOnTop="true"
        />
  
</LinearLayout>


spinner.java

package com.apandi.spinner;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;

public class spinner extends Activity
    implements AdapterView.OnItemSelectedListener {
    TextView selection;
  
String[] items={"Jakarta","Bogor","Depok","Tangerang","Bekasi"};
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.main);
        selection=(TextView)findViewById(R.id.selection);
        Spinner spin=(Spinner)findViewById(R.id.spinner);
        spin.setOnItemSelectedListener(this);
      
        ArrayAdapter aa= new ArrayAdapter(this,android.R.layout.simple_spinner_item,items);
      
        aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spin.setAdapter(aa);
    }
  
    public void onItemSelected(AdapterView parent,
            View v, int position, long id){
        selection.setText(items[position]);
    }
    public void noNothingSelected(AdapterView parent) {
        selection.setText("");
    }

    @Override
    public void onNothingSelected(AdapterView arg0) {
        // TODO Auto-generated method stub
      
    }
}

Penjelasan

Minimum SDK yang akan digunakan dalam hal ini  adalah Android versi 2.2. Jika sudah membuat project baru maka akan tercipta 4 file default yaitu class Activity utama di folder src, main.xml di folder rex/layout, file string.xml pada folder res/value dan file AndroidManifest.xml yang menyimpan seluruh informasi penting dari aplikasi yang dibuat mulai dari nama class hingga component yang digunakan seperti broadcast receiver dan lain-lain.

Pada mainActivity biasanya sistem akan langsung akan menuliskan script dasar. Linear layout adalah salah satu bentuk layout pada android. Dengan menggunakan dasar layout ini maka dasar aplikasi akan bersifat statis/fixed sehingga tidak bisa digerakkan /scroll.

Untuk menampilkan menu, maka yang digunakan adalah Spinner. Sebenarnya ada cara lain, namun untuk dasar kita akan menggunakan Spinner. Karena penempatan layout pada XML sifatnya tersusun dari atas ke bawah, maka letakkan Spinner di atas layout. Selanjutnya kita masukkan komponen Spinner.

Spinner.java merupakan file java yang akan mengakses jalanya program. Secara default file ini akan berisi script yang sudah biasa dipakai. Script main pada setContentView() maksudnya adalah bahwa class spinner.java akan menggunakan main.xml pada res/layout sebagai layout dasar untuk class tersebut. Selanjutnya inisialisasi object tersebut didalam public void onCreate().

Kemudian karena kita akan menggunakan tombol/komponen Spinner maka kita harus mengimplementasi class OnClickListener. Langkah selanjutnya kita perlu untuk mengimplementasi Spinner yang kita buat agar Spinner tersebut menerima aksi ketika ditekan.  Setelah diimplementasikan. Berikutnya kita akan membuat sebuah method untuk menangani aksi ketika Spinner di klik. Jika kita perhatikan, bahwa saat implementasi pada langkah sebelumnya, baris tersebut tertulis mengalami error. Itu dikarenakan belum adanya method ini.

Menu yang akan ditampilkan pada program terletak pada  

String[] items={"Jakarta","Bogor","Depok","Tangerang","Bekasi"};

Maka program secara otomatis akan menampilkan data yang terdapat di dalam items

Output


5 komentar:

  1. terimakasih buat tutorialnya

    BalasHapus
  2. makasih sudah membantu :n:

    BalasHapus
  3. gimana carax klo msing" item dari kota" tersebut bsa memanggil file text/word/xml?msal kota jakarta manggil file text berisi informasi tentang kota jakarta, dan juga kota" lain?

    BalasHapus
  4. terimakasih telah berbagi ilmu

    BalasHapus
  5. Komentar ini telah dihapus oleh pengarang.

    BalasHapus