2012-04-03 21 views
0

我正在根据我的数据库中的数据填充几个字段。我无法弄清楚如何使用数据库中的数据来选择微调器中的项目。 Spinner有四个选项,当我输入数据到db时,我选择一个。现在当我打电话给db时,我想让这个选项显示为在微调器中选择的那个。基本上我试图让数据库中的选项是在微调器中显示的选项。注释掉的线是我尝试过的,但不起作用。有任何想法吗?尝试从数据库中选择一个微调框中的选项

truckNumber = (Spinner) findViewById(R.id.truck_number); 
    drivable = (RadioButton) findViewById(R.id.drivable); 
    notDrivable = (RadioButton) findViewById(R.id.not_drivable); 
    truck = (RadioButton) findViewById(R.id.truck); 
    trailer = (RadioButton) findViewById(R.id.trailer); 
    aa = new ArrayAdapter<String>(this, 
      android.R.layout.simple_spinner_item, trucks); 
    bb = new ArrayAdapter<String>(this, 
      android.R.layout.simple_spinner_item, trailers); 
    newTime = new Time(); 
    edit= new Inspection(); 
    long something = edit.returnID(); 
    updateDB= new InspectionDBAdapter(this); 
    if(something>0) 
    { 
     updateDB.open();  
     Cursor result= updateDB.getOneInspection(something); 
     result.moveToFirst(); 
     int odo=result.getColumnIndex("odometer"); 
     int firstDriver=result.getColumnIndex("driver"); 
     int secondDriver=result.getColumnIndex("codriver"); 
     int driveCondition=result.getColumnIndex("status"); 
     int vehicleType=result.getColumnIndex("vehicle_type"); 
     int truckNum=result.getColumnIndex("vehicle_id"); 
     driver.setText(result.getString(firstDriver)); 
     odometer.setText(result.getString(odo)); 
     coDriver.setText(result.getString(secondDriver)); 
    // truckNumber.setAdapter(aa.getPosition(result.getString(truckNum).to)); 
    // truckNumber.setSelection(result.getString(truckNum).toString()); 
     if(result.getString(driveCondition).equals("1")) 
      drivable.setChecked(true); 
     else 
      notDrivable.setChecked(true); 

     if(result.getString(vehicleType).equals("truck")) 
      truck.setChecked(true); 
     else 
      trailer.setChecked(true); 

     result.close(); 
     updateDB.close(); 
    } 

更新:在How to set selected item of Spinner by value, not by position?找到答案。第二个答案与48票

回答

1

我没有完全理解你的问题,但是

truckNumber.setAdapter(aa.getPosition(result.getString(truckNum).toString)); 

不能编译。你可能希望做

truckNumber.setAdapter(aa); 
+0

我想获得选项的数据库是在微调中选择的一个 – Aaron 2012-04-03 20:20:32

相关问题