在may应用程序中,我有一个包含大量数据的微调器窗口小部件。 用户很难在他们之间找到他的项目,所以我决定为spinner的内容插入搜索功能。想法是如果用户点击快速搜索按钮,他应该提供一个文本字段来输入一个字母,然后微调器列表跳转到它提供的字母找到的第一个单词。 那有什么解决方案吗? 感谢名单
答案 0 :(得分:3)
让我们假设,完整的Spinner数据是列表。
初始化
listCurrent=list.clone();
通过
在spinner上设置ArrayAdapterArrayAdapter<String> adapter=new ArrayAdapter(context, android.R.layout.simple_spinner_item_1, listCurrent);
覆盖onTouch事件,打开包含编辑文本的对话框,例如editText和点击按钮,否则选择项目,在对话框按钮单击,从editText获取字符串并过滤结果并通过调用重置适配器:
listCurrent= filter(list, text);
adapter.notifyDataSetChanged();
答案 1 :(得分:1)
轻松做你想做的事情是
有一个包含选择文本的按钮。 单击Button时打开包含带有EditText的ListView的Dialog或Activity(startActivityForResult)。
使用EditText中的搜索内容更新列表视图。
当用户单击ListView中的项目时。用结果完成活动。
并从onActivityResult更新按钮中的文本。
答案 2 :(得分:-1)
您可以使用自动编译...