0

我正在根据我的数据库中的数据填充几个字段。我无法弄清楚如何使用数据库中的数据来选择微调器中的项目。Spinner 有四个选项,当将数据输入数据库时​​,我选择一个。现在,当我调用 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();
    }

更新:在如何按值而不是按位置设置 Spinner 的选定项目中找到了答案?. 第二个答案 48 票

4

1 回答 1

1

但是,我并不完全理解您的问题

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

甚至不能编译。您可能希望这样做

truckNumber.setAdapter(aa);
于 2012-04-03T20:13:18.920 回答