Java 设置微调器的选定项

Java 设置微调器的选定项,java,android,spinner,Java,Android,Spinner,您好,我有以下对象: public class busObj { private int id; private String registrationNo; private String model; private String driver; private String contact; public busObj() { } public busObj(int id, String registrationNo, Strin

您好,我有以下对象:

public class busObj {

    private int id;
    private String registrationNo;
    private String model;
    private String driver;
    private String contact;

    public busObj() { }

    public busObj(int id, String registrationNo, String model, String driver, String contact) {
        this.id = id;
        this.registrationNo = registrationNo;
        this.model = model;
        this.driver = driver;
        this.contact = contact;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getRegistrationNo() {
        return registrationNo;
    }

    public void setRegistrationNo(String registrationNo) {
        this.registrationNo = registrationNo;
    }

    public String getModel() {
        return model;
    }

    public void setModel(String model) {
        this.model = model;
    }

    public String getDriver() {
        return driver;
    }

    public void setDriver(String driver) {
        this.driver = driver;
    }

    public String getContact() {
        return contact;
    }

    public void setContact(String contact) {
        this.contact = contact;
    }

    @Override
    public String toString() {
        return model + " " + registrationNo + " - " + driver;
    }
}
现在,我已经创建了此对象的ArrayList:

ArrayList<busObj> busList;
ArrayList总线列表;
然后,我使用它分配给适配器并设置列表视图:

protected void setBusSpinner() {
        bAdapter = new ArrayAdapter<busObj>(this, R.layout.simple_list_item, busList);
        bAdapter.notifyDataSetChanged();
        spBus.setAdapter(bAdapter);
    }
protectedvoid setBusSpinner(){
bAdapter=新阵列适配器(此,R.layout.simple\u列表项,总线列表);
bAdapter.notifyDataSetChanged();
设置适配器(bAdapter);
}
现在,上面的代码都可以工作了,但是我的问题是,我有一个关于同一活动的列表(不是片段),因此当用户单击该列表中的某个项目时,应该填充表单中的数据

我可以用EditText和TextView等来实现这一点,但当涉及到微调器时,我不知道如何进行,因为我有实际的项目,而不是位置

在我的例子中,所选项目将是“bankObj”,但正如您从我的代码中看到的,我已覆盖“toString()”属性以显示文本而不是对象

因此,假设我有一个id为1的对象,如何将其设置为微调器中的当前选定项


我在stack overflow上看到过几个类似的问题,比如:但到目前为止,没有一个对我有效。

您是否尝试过获取bankObj.getId()

我不知道你的问题是否正确,但spinner有
onItemSelectedListener
接口,该接口已
onItemSelected(AdapterView父项、视图arg1、int pos、长id)
,这可能会对你有所帮助。这将给出所选项目在适配器中的位置。否,该项目是从listview中选择的,微调器位于同一活动中的表单中。因此,基本上,当用户点击listview中的某个项目时,微调器应更改为选定项目的值。在我的例子中,所选项目始终是一个对象。