我正在使用cat Category type的通用ArrayList填充一个微调器。
现在,我想从中获取特定项目的位置;所以,我尝试了下面的代码,但它总是返回S.
if (Singleton.getCategory() != null) {
cat item =new cat();
String cat= Singleton.getCategory().toString();
int catid= Singleton.getCategoryid();
item.setName(cat);
item.setcatId(catid);
int spinnerPosition=selcategaryadapter.getPosition(item);
//set the default according to value
selCategary.setSelection(spinnerPosition);
}
以下是我填充微调器的方法:
JSONArray jsonarray=JSONFunction.getJSONCategary();
JSONObject json1=null;
ArrayList<eexit> listCategory= new ArrayList<eexit>();
try {
for(int i=0;i< jsonarray.length();i++) {
json1=jsonarray.getJSONObject(i);
arrayCategary[i]=json1.getString("Name")
cat item=new cat();
item.setName(json1.getString("Name"));
item.setcatId(Integer.parseInt(json1.getString("CategoryID")));
listCategory.add(item);
}
} catch (Exception e) {
// TODO: handle exception
}
ArrayAdapter<eexit> selcategaryadapter = new ArrayAdapter<eexit>(Activity.this,R.layout.spinner_layout, listCategory);
selcategaryadapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item );
selCategary.setAdapter(selcategaryadapter);
selCategary.setPrompt("Select Category");
答案 0 :(得分:3)
像这样使用 setOnItemSelectedListener
amountSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View view,
int position, long arg3) {
cat item =(car) view.getTag();
}
答案 1 :(得分:2)
我不确定你在哪里实施了OnItemSelectedListener()
四个你的Spinner。如果你实施它,那么你可以直接占据位置。
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
// your code here
}
@Override
public void onNothingSelected(AdapterView<?> parentView) {
// your code here
}
});