1

我想做的事:

  • 显示一个文本框作为输入字段,它将接受城市名称(世界上的任何城市)
  • 当用户开始输入时,我会自动(完整/建议)城市名称。
  • 当用户从下拉列表中选择一个城市名称时,该名称也会出现在文本框中,并且背景会突出显示为非常浅的蓝色。

是否有任何现有的小部件可以做到这一点?如果没有,自动(完整/建议)城市名称的好方法是什么?

编辑:我知道 AutoCompleteTextView 会自动完成。问题更多是关于处理详尽的城市数据源(希望在某处作为 API 在线提供),并将小部件与此数据源列表连接起来。

4

3 回答 3

5

正如您自己已经指出的那样,使用 Android SDK 中的标准组件可以相当容易地构建所描述的小部件,主要组件是AutoCompleteTextView. 就“从哪里获取城市数据”而言,您基本上有两种选择:

  1. 将数据与应用程序捆绑在一起。
  2. 使用网络服务。

两者显然各有利弊。捆绑数据会大大增加您的 APK 大小,而 Web 服务通常会受到礼貌限制。哪个选项是“最好的”,将取决于几个因素,包括您的应用用户群的大小。

捆绑数据的一些具体资源:

和网络服务:

请注意,这些列表绝不是详尽无遗的——我相信还有很多其他选择。不过,他们应该为您提供一个不错的起点。

于 2013-10-21T02:37:10.823 回答
0

您可以尝试 AutoCompleteTextView 类 http://developer.android.com/reference/android/widget/AutoCompleteTextView.html

于 2013-10-21T01:59:07.007 回答
0

我猜你正在寻找类似于 Typeahead 地址选择器的东西。

https://github.com/sgruhier/typeahead-addresspicker

它既可以在您键入时推荐自动完成功能,也可以使用地图来选择/显示地址。看起来不错 :)

于 2014-06-25T12:37:28.587 回答