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);
}
}