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
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>
<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
}
}
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:
terimakasih buat tutorialnya
makasih sudah membantu :n:
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?
terimakasih telah berbagi ilmu
Posting Komentar