什么是Spinnner呢?其实它长这样
它的布局文件长这样:
<Spinner
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/spinner_id"
/>
那么看起来如此没营养的东西应该怎么来使用呢?
一,首先你得在MianAcitivity中找到它
//1, 得到控件初始化
Spinner spinner = (Spinner) findViewById(R.id.spinner_id);
二,得到这样一个下拉菜单以后你得给他填充他想要的数据是吧
//2, 得到数据源
data = new ArrayList<String>();
data.add("猎人");
data.add("法师");
data.add("盗贼");
data.add("战士");
data.add("骑士");
data.add("牧师");
data.add("狂战士");
/**
* context 上下文对象
* resource 每个item的布局页面
* textViewResourceId 数据要显示在那个TextView之上 对应的ID
* objects 数据源
*/
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
R.layout.item_spinner_02,
R.id.tv,
data);
//4, 为控件设置适配器
spinner.setAdapter(adapter);
三 数据现在也已经有了,这个时候我们得需要给他一个监听让它带上生命的气息啦
//5, 为控件添加监听器
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
/**
* AdapterView<?> parent 下拉列表的对象
* View view 当前被选中的View
* int position 当前选中条目的位置(条目从0开始)
* long id 当前选中View的ID
*/
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
// 选中时执行
Toast.makeText(SecondActivity.this, data.get(position), Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub
}
});
最基础就这样!