Spinner Android Value成员和显示成员

时间:2012-02-07 12:52:58

标签: android android-spinner

在我的情况下,

微调器通常只显示一个字符串我想分配IDpersonne和Name, 旋转器必须告诉我这个名字。 当我得到所选项目时,我必须得到ID。 我该怎么办?

2 个答案:

答案 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等中显示的项目。

有几种适配器实现,如果它们都不适合您的数据结构,您可以创建自己的适配器。