Spinner控件
首先在XML文件中声明一个Spinner控件:
<Spinner
android:id="@+id/spinnerId"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
静态绑定Spinner对象中的内容:
首先在strings.xml中声明一个string-array:
<string-array name="playlist">
<item >see you again</item>
<item >lighteststart</item>
<item >father</item>
<item >时间都去哪啦</item>
</string-array>
在MainActivity中代码如下:
spinner = (Spinner)findViewById(R.id.spinnerId);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.playlist, android.R.layout.simple_spinner_item);
//设置Spinner当中每个条目的模式
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
//设置标题
spinner.setPrompt("歌曲列表");
动态绑定Spinner对象中的内容:
List<String> list = new ArrayList<String>();
list.add("text1");
list.add("text2");
//item.xml中指定了下拉菜单中的样式,第三个参数指定了textView控件的ID,list为指定的数据,可以为任何类型
ArrayAdapter adapter = new ArrayAdapter(this,R.layout.item,R.id.textViewid,list);
spinner.setAdapter(adapter);
//设置标题
spinner.setPrompt("歌曲列表");
通过设置监听器,监听当前用户点击的spinner控件中的哪个条目:
spinner.setOnItemSelectedListener((OnItemSelectedListener) new SpinnerItemClickListener());
class SpinnerItemClickListener implements OnItemClickListener{
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// arg0为点击的Spinner对象,arg1为item对象,arg2为position,arg3为ID
arg0.getItemAtPosition(arg2).toString();
}
}