Spinner에 복잡한 대상을 끼워넣고 키 값과value 값의 해결 방법을 찾습니다.

1557 단어 android
인터넷에서 찾는 것은 모두 String[]을 사용하거나 Array List을 사용하여 Spinner에 데이터를 넣는 것이다. 만약에 복잡한 대상이라면?예: ArrayList
사실 간단합니다. 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
				
	}
});

좋은 웹페이지 즐겨찾기