如何从Android中的Spinner获取标签值?

时间:2014-02-27 07:11:53

标签: android android-spinner

我有一个显示城市名称的Spinner。我从webservice获取它们。随之而来的是每个城市的背景ID。所以我想,每当用户点击城市时,相应的ID应该存储在一个字符串中。 我的代码如下。它正在工作,但我从整个数组中得到最后一个ID,无论我选择什么,ID都是最后一个ID。

cityspinner.setAdapter(adapter);
                    cityspinner.setTag(nid[i]);
                    Log.e("IDS", nid[i]);
                    cityspinner.setOnItemSelectedListener(new OnItemSelectedListener() {

                        @Override
                        public void onItemSelected(AdapterView<?> arg0,
                                View arg1, int arg2, long arg3) {
                            // TODO Auto-generated method stub
                            String selected = (String) cityspinner.getTag();
                            //String selected = list.get(category.getSelectedItemItemPosition()).get("Category");
                            System.out.println(selected);
                        }

                        @Override
                        public void onNothingSelected(AdapterView<?> arg0) {
                            // TODO Auto-generated method stub

                        }
                    });

1 个答案:

答案 0 :(得分:1)

尝试以下内容,

  @Override
  public void onItemSelected(AdapterView<?> arg0,View arg1, int pos, long arg3) 
   {                        
     String selected = cityspinner.getItemAtPosition(pos).toString();
     //or                            
     String selected = items[pos]; //Assuming that "items" is a String[].
   }