如何在 Android Studio 中以编程方式 select AutoCompleteTextView 中的任何项目?

How to select any item from AutoCompleteTextView programmatically in Android Studio?

AutoCompleteTextView autoCompleteTextView
ArrayAdapter<String> adapter;
ArrayList<String> list = new ArrayList<>();

@Override
protected void onCreate(Bundle savedInstanceState) {
    // code...
    list.add("First");
    list.add("Second");
    list.add("Third");
    list.add("Forth");
    list.add("Fifth");
    autoCompleteTextView = findViewById(R.id.auto_complete);
    adapter = new ArrayAdapter<>(this, R.layout.drop_down, list);
    autoCompleteTextView.setAdapter(adpater);
}

then, after adding some strings to ArrayList and linking that list with autoCompleteTextView using Adapter.

autoCompleteTextView.setSelection(3);

现在我希望我的任何项目在我打开后自动被选中 activity。我尝试了 setSelection() 方法,但它不起作用。

您选择的值将存储 selectedItem

@Override
protected void onCreate(Bundle savedInstanceState) {
    // code...
    autoCompleteTextView = findViewById(R.id.auto_complete);
   
    list.add("First");
    list.add("Second");
    list.add("Third");
    list.add("Forth");
    list.add("Fifth");
 adapter = new ArrayAdapter<>(this, R.layout.drop_down, list);
    autoCompleteTextView.setAdapter(adpater);
autoCompleteTextView.setThreshold(1);
  String selectedItem = autoCompleteTextView.getText().toString();
}

我们需要将 false 作为第二个参数传递给 setText() 方法。

autoCompleteTextView.setText("First", false);

如果我们不将第二个参数 "false" 作为过滤器传递给 setText() 方法,它将清除列表中的所有条目并只保留一个条目。我们设置为使用 setText() 方法。