您的位置:首页 > 移动开发 > Android开发

一分钟掌握Android spinner下拉框

2015-06-04 14:58 417 查看
//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_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_item,al);//加图片可自定义适配器
sp.setAdapter(adapter);
sp.setSelection(1);//默认选择第二项

//注:setAdapter()方法添加的时机必须在容器集合获取到相关数据后,否则spinner内容无法显示;

//spinner.setPrompt()设置标题 布局xml需要为 style="@android:style/Widget.Spinner"

//setSelection()方法必须最后执行,否则无法选择指定项;内容刷新adapter.notifyDataSetChanged();

//资源文件转数组:getResources().getStringArray(R.array.x);



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: