spinner_demo.xml這個布局檔案的寫法如下:
<?xml
version="1.0"
encoding="utf-8"?>
<linearlayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<spinner
android:id="@+id/spinner1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<textview
android:id="@+id/textview1"
android:layout_width="wrap_content"
android:text="被選中的人名顯示在下面"
android:textsize="25sp"
/>
</linearlayout>
aspinner
package com.example.uidemo3;
import java.util.arraylist;
import android.r.anim;
import android.app.activity;
import android.os.bundle;
import android.view.view;
import android.widget.adapterview;
import android.widget.adapterview.onitemselectedlistener;
import android.widget.arrayadapter;
import android.widget.spinner;
import android.widget.textview;
public class aspinner extends activity {
spinner spinner1;
arraylist<string> arraylist = new arraylist<string>();
textview textview1;
onitemselectedlistener onitemselectedlistener = new onitemselectedlistener() {
/*
* parent the adapterview where the selection happened
*view the view within the adapterview that was clicked
*position the position of the view in the adapter
*id the row id of the item that is selected
*
*adapterview<?>代表spinner
*view代表spinner裡面的item
*/
@override
public void onitemselected(adapterview<?> parent, view view,
int position, long id) {
textview1.settext( ((textview)view).gettext());
}
public void onnothingselected(adapterview<?> parent) {
};
@override
protected void oncreate(bundle savedinstancestate) {
super.oncreate(savedinstancestate);
this.setcontentview(r.layout.spinner_demo);
spinner1 = (spinner) this.findviewbyid(r.id.spinner1);
textview1 = (textview) this.findviewbyid(r.id.textview1);
arraylist.add("小倉優子");
arraylist.add("蒼井空");
arraylist.add("松島楓");
arraylist.add("波多野結衣");
arraylist.add("櫻田櫻");
arraylist.add("小峰由衣");
arraylist.add("早乙女");
arraylist.add("小泉彩");
// 适配的概念adapter,主要負責适配資料和各種樣式
// 下拉菜單的樣式
@suppresswarnings({ "unchecked", "rawtypes" })
arrayadapter arrayadapter = new arrayadapter(this,
android.r.layout.simple_spinner_item, arraylist);
// 以下顯示的是一行,隻有一行能看的見
// arrayadapter.setdropdownviewresource(android.r.layout.simple_dropdown_item_1line);
// 這種是帶有文本和radio的下拉效果。
arrayadapter.setdropdownviewresource(android.r.layout.simple_spinner_dropdown_item);
// arrayadapter.setdropdownviewresource(android.r.layout.simple_spinner_item);
// 為下拉的spinner設定内容
spinner1.setadapter(arrayadapter);
//為spinner1設定監聽事件
spinner1.setonitemselectedlistener(onitemselectedlistener);
}
}