动态创建的自动完成文本视图在方向更改后仅显示选定的行

Dynamically created autocompletetextview shows only selected row after orientation change

我正在尝试动态创建一个 AutoCompleteTextView,以便像 Android 中的微调器一样使用。我已经通过在单击和焦点更改时显示下拉列表使其正常工作。但是当我选择任何选项后改变方向时,只有选择的选项显示在之后的下拉列表中。

有什么办法可以纠正这个问题,让它在方向改变后也显示所有项目吗?我找到了一种方法,就是每次都 setText("") 但这也会清除任何不需要的选定值。

感谢任何帮助!

最近自己也需要做类似的事情。我使用一个自定义适配器来完成此操作,该适配器覆盖 returns null 的 getFilter() (因此它 returns 所有可用值)。

public class AutocompleteAdapter extends ArrayAdapter<String> {
    public AutocompleteAdapter(Context context, int resource, int textViewResourceId) {
        super(context, resource, textViewResourceId);
    }

    @Override
    public Filter getFilter() {
        return new Filter() {
            @Override
            protected FilterResults performFiltering(CharSequence constraint) {
                return null;
            }

            @Override
            protected void publishResults(CharSequence constraint, FilterResults results) {

            }
        };
    }
}