Android高德地图使用之地点关键词的输入提示-InputTips

本文介绍了在Android应用中使用高德地图实现地点输入自动提示的功能,包括主界面定位、点击跳转到搜索界面、显示当前城市信息以及输入文本后的自动提示。通过Intent进行数据传递,使用高德地图API进行地理信息检索和筛选,并结合自定义ListView展示搜索结果。
摘要由CSDN通过智能技术生成

这几天在写android高德地图相关的项目,遇到实现乘客选择上下车地点的功能,其中涉及到搜索界面中文本框的地点输入的自动提示模块,先来看下滴滴上该功能的效果图:



从图中分析并划分一下简单功能需求:

 1).主界面的定位功能

 2).主界面点击目的地的TextView跳转到搜索目的地的界面

 3).搜索界面文本框前面显示当前所在城市,也就是当前的定位信息

 4).文本框的输入后自动提示

简单来说,就这些功能,那么我们来逐一实现一下吧:

1.主界面的定位功能

 这一块比较简单,高德地图官网给出了具体实现,网上也有很多相关文章,这里就直接跳过了,想省事的可以看看这篇文章:http://blog.csdn.net/jwzhangjie/article/details/43151045

2.主界面点击选择目的地跳转到搜索界面,并在搜索界面显示城市信息

二和三两个功能模块我就连起来讲了,因为这里简单涉及到两个activity之间的数据传递,主要用intent这个意图来实现,这里就贴上关键代码吧:

(1).发送城市数据:

searchPlace=amapLocation.getCity();//获取所在城市信息

case R.id.drop_off:
    //poi搜索界面的跳转
    Intent intent_search=new Intent(MainMenuActivity.this, POISearchActivity.class);
    intent_search.putExtra("city",searchPlace);//将定位的城市信息传入poi搜索事件处理
    startActivity(intent_search);
    break;
(2).接收城市数据:

public String sendCityInfo(){
 //将前面定位数据中的city数据传过来
    String info;//前面定位所在城市信息
    Intent intent=this.getIntent();
    info=intent.getStringExtra("city");
    return info;
}
TextView city_tv;//显示当前定位城市信息的tv
city_tv= (TextView) findViewById(R.id.locate_city);
city_tv.setText(sendCityInfo());//设置tv显示的城市信息

3.文本框的输入后自动提示

到了功能的重点了,来分析一下实现思路:

 (1).输入的自动提示文本框

 (2).获取地理信息的数据并传入,并且对当前城市筛选搜索信息

 (3).将信息显示出来

实现步骤:

 1).android为我们提供了自动提示文本框来实现输入关键字为其匹配相关的信息条目

       用法:http://www.cnblogs.com/tinyphp/p/3969984.html参考一下这篇文章

      注意它可以通过设置adapter来实现查询匹配信息的下拉列表

     我们主要是通过将自定义的listview来显示信息条目,在其ontextchange()中监听

 2).至于获取地理信息和相关具体搜索筛选的庞大工作量肯定不需要我们自己完成,高德地图已经为我们提供了一系列的封装方法和接口:

 我们去官网查看一下高德开发文档:


发现它为我们提供三个类和一个接口,先看下这个接口:

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值