一、读取xml文件获得下拉列表
xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- 类别 -->
<string name="leibie">类别</string>
<string name="sal">工资</string>
<string name="jianzhi">兼职</string>
<string name="gupiao">股票</string>
<string name="jijin">基金</string>
<string name="butie">补贴</string>
<string name="comm">奖金</string>
</resources>
java:
private int[] leibieArr = {R.string.sal,R.string.jianzhi,R.string.gupiao,R.string.jijin,R.string.butie,R.string.comm,};
//初始化Spinner
private Spinner spinner_leibie;
private List< String> list1 = new ArrayList< String>();
ArrayAdapter<String> adapter1 = null;
onCreate方法中:
spinner_leibie = (Spinner)this.findViewById(R.id.add_expense_spinner_leibie);
//第一步:添加一个下拉列表项的list,这里添加的项就是下拉列表的菜单项
for(int i=0; i<leibieArr.length; i++){
list1.add((String) getResources().getText(leibieArr[i]));
}
//第二步:为下拉列表定义一个适配器,这里就用到里前面定义的list。
adapter1 = new ArrayAdapter< String>(this,android.R.layout.simple_spinner_item, list1);
//第三步:为适配器设置下拉列表下拉时的菜单样式。
adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//第四步:将适配器添加到下拉列表上
spinner_leibie.setAdapter(adapter1);
//第五步:为下拉列表设置各种事件的响应,这个事响应菜单被选中
spinner_leibie.setOnItemSelectedListener(this);
此类要实现OnItemSelectedListener,然后重写onItemSelected方法。
public void onItemSelected(AdapterView<?> parent, View view, int position,
long id) {
int viewId = view.getId();
switch (viewId) {
case R.id.add_expense_spinner_leibie:
/* 将所选mySpinner 的值带入myTextView 中*/
//myTextView.setText("您选择的是:"+ adapter.getItem(arg2));
leibie = adapter1.getItem(position);
/* 将mySpinner 显示*/
parent.setVisibility(View.VISIBLE);
break;
default:
break;
}
}
二、读取xml中的string-array
xml:
<?xml version="1.0" encoding="UTF-8"?> <resources> <string-array name="TBL_EXPENDITURE_CATEGORY"> <item>其他杂项</item> <item>金融保险</item> <item>医疗保健</item> <item>人情往来</item> <item>学习进修</item> <item>休闲娱乐</item> <item>交流通讯</item> <item>行车交通</item> <item>居家物业</item> <item>食品酒水</item> <item>衣服饰品</item> </string-array>
</resources>
java:
ArrayAdapter<CharSequence> adapter1 = null;
//为下拉列表定义一个适配器
adapter1 = ArrayAdapter.createFromResource(getApplicationContext(), R.array.TBL_EXPENDITURE_CATEGORY, android.R.layout.simple_spinner_item);