网上找的都是使用String[]或者ArrayList<String>往Spinner里面塞数据,那假如是个复杂对象呢?比如:ArrayList<Company>
其实,很简单,重写Company的toString()就可以了;
然后就可以使用了:
其实,很简单,重写Company的toString()就可以了;
public class Company {
public String jjgsdm;//基金公司代码
public String jjgsmc;//基金公司名称
public String toString(){
return jjgsmc;
}
}
然后就可以使用了:
private ArrayList<Company> companyList=new ArrayList<Company>();
companyList.add(Company0);
companyList.add(Company1);
companyList.add(Company2);
spinner=(Spinner)findViewById(R.id.simple_text_4);
adapter = new ArrayAdapter<Company>(mContext,android.R.layout.simple_spinner_item ,companyList);
adapter.setDropDownViewResource (android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setPrompt("选择基金公司:");
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
//String jjgsdm=((Company)spinner.getSelectedItem()).jjgsdm;
String jjgsdm=companyList.get(position).jjgsdm;
Log.i(tag,"基金公司代码="+jjgsdm);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub
}
});