通过高仿深圳的应用近期打算。UI我们已经做了,我见过APP查询界面。关闭网络也将是能够查询其指示数据被存储在数据库中,或者是第一网络,所有网站上的数据是好了。我想简单地使用查询地图提供了。

曾经是接触的百度地图。只是百度地图,不怎么好用,我也就用高德地图了关于project建立 能够看官方文档。

高德配置项目

到后面的项目,说不是非常清楚,要看官方demo才行。

我就干脆自己写一个。 看UI吧 我再把UI代码贴出来

Edittext输入信息 button将数据提交查询 listview 显示查询回调的数据

<?

xml version="1.0" encoding="utf-8"?

>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" > <LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
tools:ignore="UselessLeaf,UselessParent" > <EditText
android:id="@+id/et_keyword"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:hint="请输入关键字" /> <Button
android:id="@+id/btn_search"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="搜索" />
</LinearLayout> <ListView
android:id="@+id/lv_result"
android:layout_width="match_parent"
android:layout_height="match_parent" /> </LinearLayout>

第一步:初始化控件

	// 控件相关
private EditText mEtKeyword;
private Button mBtnSearch;
private ListView mLvResult;
	private void initView() {
mEtKeyword = (EditText) findViewById(R.id.et_keyword); mBtnSearch = (Button) findViewById(R.id.btn_search); mLvResult = (ListView) findViewById(R.id.lv_result);
mBtnSearch.setOnClickListener(this);
mLvResult.setOnItemClickListener(this);
}

第二部 看button点击事件处理

	@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_search:
//1.获得用户输入数据
String keyword = mEtKeyword.getText().toString();
//2.推断用户是否输入为空
if (keyword.trim().length() == 0) {
Toast.makeText(this, "请输入查询条件", Toast.LENGTH_LONG).show();
} else {
//3.不为空进行搜索
search(keyword);
}
break;
default:
break;
}
}

第三步 看搜索数据以及返回

这时候我们看看官方文档是怎么说的

关键字搜索

1.搜索条件设置

您须要通过 PoiSearch.Query(String query, String ctgr, String city) 设置搜索条件。參数“query”为搜索的keyword,“ctgr”为搜索类型(类型參照表从相关下载处获取)、“city”为搜索城市。keyword、类型至少输入一个。搜索城市必须输入。

通过 Query.setPageSize(int) 设置查询每页的结果数目。

通过 Query.setPageNum(int) 设置查询第几页。

2.发送请求和接收数据。

使用 PoiSearch.searchPOIAsyn() 搜索 POI。使用 PoiSearch.setOnPoiSearchListener() 方法设置监听器。在 PoiSearch.OnPoiSearchListener 接口回调方法 onPoiSearched(PoiResult poiResult,int rCode)中处理返回结果。

当指定搜索城市时,若没有返回 POI 结果,则会返回包括keyword的建议城市名称。当keyword搜索无结果时,则会返回搜索建议keyword。

SO  我们先定义

// 兴趣点查询先关

    private PoiSearch search;

    //会返回查询数据的类

    private PoiSearch.Query query;

由于我在深圳 所以 我会搜深圳的东西

	private void search(String keyword) {
// 初始化查询条件
query = new Query(keyword, null, "深圳");
query.setPageSize(10);
query.setPageNum(1); // 查询兴趣点
search = new PoiSearch(this, query);
// 异步搜索
search.searchPOIAsyn();
search.setOnPoiSearchListener(this);
}

第四步 看回调数据  由于我们自己设置了 返回10条数据  用listview 显示

	/* -------------------- 兴趣点查询回调 -------------------- */
@Override
public void onPoiItemDetailSearched(PoiItemDetail arg0, int arg1) { } @Override
public void onPoiSearched(PoiResult poiResult, int rCode) {
List<String> strs = new ArrayList<String>();
items = poiResult.getPois();
if (items != null && items.size() > 0) {
PoiItem item = null;
for (int i = 0, count = items.size(); i < count; i++) {
item = items.get(i);
strs.add(item.getTitle());
}
// 给ListView赋值。显示结果
ArrayAdapter<String> array = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, strs);
mLvResult.setAdapter(array);
}
} /* -------------------- 兴趣点查询回调 -------------------- */

版权声明:本文博客原创文章。博客,未经同意,不得转载。

高德地图教程_poi搜索和显示的更多相关文章

  1. 高德地图与CAD图叠加显示方法汇总及优缺点分析

    前言 ​ 高德地图应用在许多领域,平常我们用的地图导航,除过正常的地图导航指引功能之外,其实还有很多实用的功能.如高德影像地图应用在包括地理.土地测量.水文学.生态学.气象学以及海洋学等方面.Auto ...

  2. IOS原生地图与高德地图

    原生地图 1.什么是LBS LBS: 基于位置的服务   Location Based Service 实际应用:大众点评,陌陌,微信,美团等需要用到地图或定位的App 2.定位方式 1.GPS定位  ...

  3. AngularJS指令封装高德地图组件

    1 概述 公司移动门户原来是基于AngularJS指令封装的百度地图组件,用于签到.签退.定位等功能,在使用过程中发现百度地图频繁的弹出广告,所以打算重新引用其它地图组件,最后决定基于AngularJ ...

  4. [转] Xcode4.4.1下安装高德地图详细教程

    转载地址:http://blog.csdn.net/mad1989/article/details/7913404 此教程和官方的没有太大区别,省略了好多没用的步骤,添加framework的方式是最新 ...

  5. 【高德地图API】从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索

    原文:[高德地图API]从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索 摘要:地图服务,大家能想到哪些?POI搜素,输入提示,地址解析,公 ...

  6. 安卓开发笔记①:利用高德地图API进行定位、开发电子围栏、天气预报、轨迹记录、搜索周边(位置)

    高德地图开发时需要导入的包在下面的网盘链接中:(由于高德地图api更新得太快,官网上最新的包使用起来没有之前的方便,所以以下提供最全面的原始包) 链接:http://pan.baidu.com/s/1 ...

  7. [WEB地图] 2017高德地图API WEB开发(key申请,地图搭建)简约教程

      前端时间因为公司需要研究 了一下百度的教程 然后写个简约的笔记记录一下自己学习的收获,只为了满足自己暂时的写作热情   高德地图WEB开发(key申请.api)简约教程 1.首先我们需要去“高德地 ...

  8. 高德地图-搜索服务-POI搜索

    高德地图-搜索服务-POI搜索 之前公司项目收货地址仿饿了么的收货地址,结果发现自己实现的关键字搜索和周边搜索,搜索到的poi列表跟饿了么的并不完全一样,后来考虑了下,应该是搜索的范围.类型之类的设置 ...

  9. 高德地图 JavaScript API 开发系列教程(一)

    高德地图 API 提供包括 Web API 即 JavaScript API,Android API,定位API,IOS API,WP API,Win8 API等,本系列教程主要针对高德 JavaSc ...

随机推荐

  1. java这些东西发展(1)-------大约ORA00604和ORA12705

    ******************************有关myEclipse和oracle在连接发生的一个问题********************************* 用户界面显示的评 ...

  2. VMWARE虚拟机无法访问的三种方法分析

    bridged(桥接模式). NAT(网络地址转换模式) host-only(主机模式). 理论认识: 1.bridged(桥接模式) 在这个地方模式.虚拟机等同于网络内的一台物理主机,可对手动设置I ...

  3. OpenCV视频播放方法

    OpenCV视频播放方法 今天折腾了一下OpenCV的视频播放功能,希望能对项目又帮助- 代码还是非常easy的,仅仅是之前遇到点小麻烦,找不到cvCreateFileCapture函数的定义,花了一 ...

  4. T-SQL使用案例——结果数据前面自动补0

    原文:T-SQL使用案例--结果数据前面自动补0 现象: 在开发的过程中,往往需要数字和字符串互转.在转换的过程中,可能需要把1编程00001,这样的格式.实现这种样子是有非常多的方法,本文主要提供一 ...

  5. POJ 3237 Tree (树链拆分)

    主题链接~~> 做题情绪:了. 解题思路: 主要注意如何区间更新就ok了 . 树链剖分就是树上的线段树. 代码: #include<iostream> #include<sst ...

  6. 初步swift语言学习笔记8(保留了很多OC实现)

    笔者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/32715833 转载请注明出处 假设认为文章对你有所帮助,请通过留言 ...

  7. 有意练习--Rails RESTful(一)

    书要反复提及<哪里有天才>在说,大多数所谓的天才是通过反复刻意练习获得. 当你的练习时间达到10000几个小时后,.你将成为该领域的专家. 近期在学习rails怎样实现RESTful We ...

  8. 如何实现Web聊天

    假设你web聊天不知道这件事情,那么最好的方法可能是:openfire+jsjac openfire它是java做开源xmppserver,jsjac它是javascript做开源的Web版本xmpp ...

  9. 使用python+flask让你自己api(教程源代码)

    1.背景 ok,这可能是很多朋友和我一样经常使用的各种api,例facebook的.github的.甚至微信api.因此,很多人都想使自己的api.在线教程在这方面它是非常小的,今天,我做了一个平稳, ...

  10. SSH深度历险(三) EJB Session Bean有状态和无状态的差别与联系

    刚開始对两种sessionbean存在误解.觉得有状态是实例一直存在,保存每次调用后的状态,并对下一次调用起作用.而觉得无状态是每次调用实例化一次,不保留用户信息.细致分析并用实践检验后,会发现,事实 ...