从下拉列表中获取所选项目不起作用

问题描述 投票:0回答:1

我在我的 Android 应用程序中使用材质下拉菜单。一切正常,直到我想从下拉列表中获取数据。 我想在点击保存按钮时从下拉列表中获取数据。我根据Material Design文档进行设计,但它没有说如何获取数据。我使用

app:simpleItems
显示下拉列表中的项目:

<AutoCompleteTextView
    android:id="@+id/storeDropdown"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="none"
    app:simpleItems="@array/stores" />

但是,我不知道如何获取所选项目。我试过这个:

storeDropdown.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
        store = parent.getItemAtPosition(position).toString();
    }

    @Override
        public void onNothingSelected(AdapterView<?> parent) {
    }
});

但是我得到了null。我也尝试过手动设置 ArrayAdapter,但结果是相同的,并且外观设置为普通的 Spinner。我想使用类似 getSelectedItem() 的方法,但这只适用于 Spinner。如何从下拉列表中获取所选项目?

    

java android dropdown material-design-3
1个回答
0
投票
AutoCompleteTextView

,它具有与

Textview
相同的属性,或者说
EditText
。因此,您只需执行此操作即可获取所选项目。
 String selectedItem;

 button.setOnClickListener(new View.OnClickListener()
{
    @Override
    public void onClick(View v)
    {
      selectedItem = autoCompleteTextview.getText().toString();
    }
});

	
© www.soinside.com 2019 - 2024. All rights reserved.