高德地图教程_poi搜索和显示
通过高仿深圳的应用近期打算。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搜索和显示的更多相关文章
- 高德地图与CAD图叠加显示方法汇总及优缺点分析
前言 高德地图应用在许多领域,平常我们用的地图导航,除过正常的地图导航指引功能之外,其实还有很多实用的功能.如高德影像地图应用在包括地理.土地测量.水文学.生态学.气象学以及海洋学等方面.Auto ...
- IOS原生地图与高德地图
原生地图 1.什么是LBS LBS: 基于位置的服务 Location Based Service 实际应用:大众点评,陌陌,微信,美团等需要用到地图或定位的App 2.定位方式 1.GPS定位 ...
- AngularJS指令封装高德地图组件
1 概述 公司移动门户原来是基于AngularJS指令封装的百度地图组件,用于签到.签退.定位等功能,在使用过程中发现百度地图频繁的弹出广告,所以打算重新引用其它地图组件,最后决定基于AngularJ ...
- [转] Xcode4.4.1下安装高德地图详细教程
转载地址:http://blog.csdn.net/mad1989/article/details/7913404 此教程和官方的没有太大区别,省略了好多没用的步骤,添加framework的方式是最新 ...
- 【高德地图API】从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索
原文:[高德地图API]从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索 摘要:地图服务,大家能想到哪些?POI搜素,输入提示,地址解析,公 ...
- 安卓开发笔记①:利用高德地图API进行定位、开发电子围栏、天气预报、轨迹记录、搜索周边(位置)
高德地图开发时需要导入的包在下面的网盘链接中:(由于高德地图api更新得太快,官网上最新的包使用起来没有之前的方便,所以以下提供最全面的原始包) 链接:http://pan.baidu.com/s/1 ...
- [WEB地图] 2017高德地图API WEB开发(key申请,地图搭建)简约教程
前端时间因为公司需要研究 了一下百度的教程 然后写个简约的笔记记录一下自己学习的收获,只为了满足自己暂时的写作热情 高德地图WEB开发(key申请.api)简约教程 1.首先我们需要去“高德地 ...
- 高德地图-搜索服务-POI搜索
高德地图-搜索服务-POI搜索 之前公司项目收货地址仿饿了么的收货地址,结果发现自己实现的关键字搜索和周边搜索,搜索到的poi列表跟饿了么的并不完全一样,后来考虑了下,应该是搜索的范围.类型之类的设置 ...
- 高德地图 JavaScript API 开发系列教程(一)
高德地图 API 提供包括 Web API 即 JavaScript API,Android API,定位API,IOS API,WP API,Win8 API等,本系列教程主要针对高德 JavaSc ...
随机推荐
- NSUserDefaults API简单的介绍和使用英文文件
Overview The NSUserDefaults class provides a programmatic interface for interacting with the default ...
- hdoj 2183 奇数阶魔方(II) 【模拟】+【法】
比赛的时候花了一个多小时,以做不做 分析:可观察:中间是(n*n+1)/2, 中间的上面是n*n,以下是1, 左边是n,右面是(n*n+1)-n,并且正对角线是最左上对到最右下端添加(+1).另外一条 ...
- Objective-c正确的写法单身
Singleton模式iOS发展可能是其中最常用的模式中使用的.但是因为oc语言特性本身,想要写一个正确的Singleton模式是比较繁琐,iOS中单例模式的设计思路. 关于单例模式很多其它的介绍请參 ...
- 设备11g_rac配置对等
linux平台安装oracle 11gssh同等配置简单 构造grid用户任关系 登陸rac1,rac2分别运行: $ su - grid $mkdir ~/.ssh $chmod 700 ~/.ss ...
- 佛祖保佑,从来没有Bug
<span style="font-size:14px;">// _ooOoo_ // o8888888o // 88" . "88 // (| - ...
- C++ tree(1)
建立与基本操作 .有关二叉树的相关概念,这里不再赘述,假设不了解二叉树相关概念,建议先学习数据结构中的二叉树的知识点 准备数据 定义二叉树结构操作中须要用到的变量及数据等. #define MAXLE ...
- 具体说明 Flume介绍、安装和配置
社论: 本文总结"Hadoop生态系统"中的当中一员--Apache Flume 写在前面二: 所用软件说明: 一.什么是Apache Flume 官网:Flume is a di ...
- 【J2SE】java实现简单照片查看器
程序执行结果: project结构图: 程序代码: import java.awt.BorderLayout; import java.awt.FileDialog; import java.awt. ...
- 【2014 Multi-University Training Contest 2 1002】/【HDU 4873】 ZCC Loves Intersection
果然,或滥用零件,啥都不说了.我们欣慰地学习阅读.这两天残疾儿童是数学. 这是求所需的问题,不明确.贴上官方的解题报告. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi ...
- sdut 在机器上面向对象编程练习11(运算符重载)
在机器上面向对象编程练习11(运算符重载) Time Limit: 1000MS Memory limit: 65536K 标题叙述性说明 有两个矩阵a和b,均为2行3列,求两个矩阵之和.重载运算符& ...