微调器通常只显示一个字符串我想分配IDpersonne和Name, 旋转器必须告诉我这个名字。 当我得到所选项目时,我必须得到ID。 我该怎么办?
答案 0 :(得分:2)
我假设你的项目安排在HashMap的arraylist中 按如下方式创建适配器:
ArrayAdapter<> adapter=new ArrayAdapter(context, android.R.layout.simple_spinner_item_1, listItems)
{
public Object getItem(int position)
{
HashMap<String, String> tblItem=listItems.get(position);
return tblItem.get("NAME");
}
public int getCount()
{
listItems.size();
}
}
将此适配器设置为微调器:
spinner.setAdapter(adapter);
使用以下方式获取选择项目:
spinner.setOnItemSelectedListener(new OnItemSelectedListener()
{
public void onItemSelected(AdapterView adapterView, View view, int position, long id)
{
HashMap<String, String> tblItem=listItems.get(position);
//Use this map to get other values in list
}
});
答案 1 :(得分:1)
您可以使用Adapter。基本上,适配器是数据的包装器,它生成要在Spinner或ListView等中显示的项目。
有几种适配器实现,如果它们都不适合您的数据结构,您可以创建自己的适配器。