一 。使用Adapter的步骤
(1)获得 Spinner 对象
(2)创建 Adapter --------->新建Adapter 对象
--------->设置下拉视图的资源
(3)为Spinner 设置 Adapter
(4)为Spinner 设置监听器
具体
创建Adapter用:
(1) 新建Adapter
ArrayAdapter.ArrayAdapter( Context context , int TextViewResourceId , Listobjects );
Context: 表明这个Adpater 属于那个Activity。
第二个参数可以自己定义 。
objects :向下拉表中添加的数据 。
(2) 为Adpater 设置下拉视图的资源
也就是点击spinner 后下拉 的视图。
ArrayAdapter.setDropDownViewResource( int resource );
可以自己定义。
例子:
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); spinner = (Spinner)findViewById(R.id.spinner); tv =(TextView)findViewById(R.id.textView2); adapter = new ArrayAdapter(this , android.R.layout.simple_spinner_item, years ); //新建 Adapter adapter.setDropDownViewResource(R.layout.list); //设置下拉资源 spinner.setAdapter(adapter); //为spinner设置 adapter spinner.setOnItemSelectedListener(new OnItemSelectedListener(){ public void onItemSelected(AdapterView parent, View view, int position, long id) { String selected = years[position]; tv.append("\n"+selected); } public void onNothingSelected(AdapterView parent) { // TODO Auto-generated method stub } }); }
里面的 R.layout.list 为
也就是下拉 后的视图。
目前还不能区分list 和第二个参数的区别。
二。如果想改成可以添加下拉项目的
array = new ArrayList(); for (int i=0;i
还有
String selected = array.get(position);