//Android 自帶的spinner下拉框控件是一個不錯的系統控件,主要有兩種實現方式:
//數據可以放在res\values中添加一個city資源數組文件使用ArrayAdapter 2.數據放入容器集合自定義Adapter
2 <resources>
3
4 <string-array name="city">
5 <item>北京</item>
6 <item>上海</item>
7 <item>廣州</item>
8 <item>廈門</item>
9 </string-array>
10
11 </resources>
//設置代碼
Spinner sp = (Spinner) findViewById(R.id.spinner1);
sp.setOnItemSelectedListener(new Spinner.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
Log.e("arg2",arg2);//position id
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
ArrayAdapter adapter =ArrayAdapter.createFromResource(this,R.array.city,android.R.layout.simple_spinner_dropdown_item);
sp.setAdapter(adapter);
sp.setSelection(0);//默認選擇第一項
/////////////////////////////////////////////////
ArrayList<String> al=new ArrayList<String>();
al.add("北京");
al.add("上海");
Spinner sp = (Spinner)findViewById(R.id.spinner1);
sp.setOnItemSelectedListener(new Spinner.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
Log.e("arg2",arg2);//position id
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
ArrayAdapter<String> adapter =new ArrayAdapter<String>(this,android.R.layout.simple_spinner_dropdown_item,al);//加圖片可自定義適配器
sp.setAdapter(adapter);
sp.setSelection(1);//默認選擇第二項
//注:setAdapter()方法添加的時機必須在容器集合獲取到相關數據後,否則spinner內容無法顯示;
//spinner.setPrompt()設置標題 佈局xml需要爲 style="@android:style/Widget.Spinner"
//setSelection()方法在setAdapter後執行,否則無法選擇指定項;初始化時不選中setSelection(0,true);
//資源文件轉數組:getResources().getStringArray(R.array.x);