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