繁体   English   中英

设置微调框的选定项目

[英]Set Selected Item of 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, 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;

然后使用它分配给适配器并设置列表视图:

protected void setBusSpinner() {
        bAdapter = new ArrayAdapter<busObj>(this, R.layout.simple_list_item, busList);
        bAdapter.notifyDataSetChanged();
        spBus.setAdapter(bAdapter);
    }

现在上面的代码都能正常工作,但是我的问题是我在同一活动上有一个列表(不是片段),因此当用户单击该列表中的项目时,应填充表单中的数据。

我可以使用EditText和TextView等来完成此操作,但是当涉及到Spinner时,我不知道如何处理它,因为我有实际的项目而不是位置。

在我的情况下,一个选定的项目将是“ bankObj”,但是从我的代码中可以看到,我已经覆盖了“ toString()”属性以显示文本而不是对象。

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

我在堆栈溢出中看到了一些与此类似的问题: 如何通过值而不是位置来设置Spinner的选定项目? 但到目前为止,没有一个对我有用。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM