我在我的 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。如何从下拉列表中获取所选项目?
AutoCompleteTextView
,它具有与
Textview
相同的属性,或者说 EditText
。因此,您只需执行此操作即可获取所选项目。 String selectedItem;
button.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
selectedItem = autoCompleteTextview.getText().toString();
}
});