我有一个显示城市名称的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
}
});
答案 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[].
}