首页 > 代码库 > android控件---spinner

android控件---spinner

spinner下拉列表框的列表项有两种配置方式:

1.通过资源文件配置,通过在values种的xml,比如strings.xml中使用<string-array>元素添加制定列表项内容,然后通过android:entries=”@array/xxid”的方式进行链接。

2.通过android.widget.ArrayAdapter类读取资源文件或者指定具体设置数据。

 

一:资源文件配置方式。

 

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="app_name">adTest</string>    <string name="hello_world">Hello world!</string>    <string name="action_settings">Settings</string>        <string-array name="mycity">        <item >北京</item>        <item >重庆</item>        <item >上海</item>    </string-array></resources>

通过spinner种的android:entries="@array/mycity"进行配置链接。

 

二.通过ArrayAdapter类进行配置。

(1)读取资源文件中定义的列表项

  ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.mycity, android.R.layout.simple_spinner_item);   adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);   spinner.setAdapter(adapter);

 (2)读取制定数据

ArrayList<CharSequence> list = new ArrayList<CharSequence>();        list.add("北京");        list.add("重庆");        list.add("上海");        list.add("天津");                Spinner spinner = (Spinner)findViewById(R.id.spinner1);        ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(this, android.R.layout.simple_spinner_dropdown_item, list);        adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);        spinner.setAdapter(adapter);

或者

  String[] items = {"北京", "上海", "重庆", "天津"};
  Spinner spinner = (Spinner)findViewById(R.id.spinner1);
       
  ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(this, android.R.layout.simple_spinner_dropdown_item, items);
       
  adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
       
  spinner.setAdapter(adapter);

其中的CharSequence是String的父类接口,

ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(this, android.R.layout.simple_spinner_dropdown_item, items)中的android.R.layout.simple_spinner_dropdown_item是制定列表框未展开时的风格;而adapter.setDropDownViewResource(android.R.layout.simple_spinner_item)是设置展开之后下拉列表的风格。