使用AMap.Autocomplete() 自动补全插件,实现搜索功能

metacharset="UTF-8"title>map

style>*{margin:0;padding}#containerwidth100%height100%topleftpositionabsolute; #setZoomNode400pxheight100pxbackground-color#fffborder1px solidbox-shadow0 0 5px #00020pxright}

bodydivid="container"div="setZoomNode">鼠标点击的经纬度:span="xy"span>

>

varmap=newAMap.Map("container);//加载AMap.Autocomplete自动补全插件

AMap.plugin(AMap.Autocomplete,function(){

console.log(插件加载完成);使用插件的搜索功能

AMap.Autocomplete().search(宁波(status,data){

console.log(data);

})

})>

html>

使用自动补全搜索,并展示出来。点击后可以定位

list-stylenone200px500px#node licursorpointer>

input="text"id="txt"ul="node"ul(){console.log("插件加载完成");

txt.oninput(){

node.innerHTML"";console.log(this.value);//输入框中的文本

if(this.value==)return使用插件的搜索功能

.value,data){fori;i

oli.innerHTMLdata.tips[i].name;将坐标赋值给属性

oli.rdata.tips[i].location.R;

oli.qdata.tips[i].location.Q;

node.appendChild(oli);oli点击事件

oli.onclick(){

console.log(.r+.q);

map.setCenter([.r,1)">.q]);

}

}console.log(data);

})

}

})>

点击之后自动设置中心点

插件还有另一种方式来加载  &plugin=

="https://webapi.amap.com/maps?v=1.4.15&key=ce3b1a3a7e67fc75810ce1ba1f83c01a&plugin=AMap.Autocomplete">

调用也有另一种方式(官方提供,自带下拉样式)

new AMap.Autocomplete({

input:"txt"

})

完整代码:

官方给出的搜索方式

AMap.Autocomplete({

input:txt})>

输入提示与POI结合

POI =》 point of interest 兴趣点

280px>

);兴趣点服务

AMap.service([AMap.PlaceSearch],1)"> AMap.PlaceSearch({

pageSize:5一页显示几条

pageIndex:1默认是1,可不写

city:0574城市区号

map:map,1)">地图名

panel:setZoomNode数据装载容器

}).search(电影院);

})>

需要注意的是:只有在服务器上才能显示图片

通过输入框搜索

50px#searchNode30pxbackground#fff="searchNode"="searchIpt"button="btn">搜索button);

btn.onclickAMap.service([(){AMap.PlaceSearch({

pageSize:4pageIndex:city:cityLimit:true限制城市

map:map,1)"> panel:}).search(searchIpt.value);

})

}>

二者结合使用的demo

AMap事件监听

AMap.event.addListener(searchVal,"select",function(e){

//输入地址,选中某个具体地址时触发

console.log(e);

})

全部代码:

="https://webapi.amap.com/maps?v=1.4.15&key=ce3b1a3a7e67fc75810ce1ba1f83c01a&plugin=AMap.Autocomplete,AMap.PlaceSearch">

searchValsearchIpt});placeSearchAMap.PlaceSearch({

map:map

});AMap事件监听

AMap.event.addListener(searchVal,1)">select(e){输入地址,选中某个具体地址时触发

console.log(e);

placeSearch.search(e.poi.name);

})>

在给定范围内搜索(搜索周边)

#searchNode300px="list">

19121.5497920000000229.868388]

});

console.log(map.getCenter().toString());

AMap.service([(){

btn.onclickAMap.PlaceSearch({

type:餐饮住宿

pageSize:list}).searchNearBy(1000(){});搜索距离指定中心点方圆1000米的住宿点

}

})>

添加标记点

>

]

});添加标记

markerAMap.Marker({

icon:https://a.amap.com/jsapi_demos/static/demo-center/icons/poi-marker-default.png官方提供的标记

position:[]

});

marker.setMap(map);>

点击地图添加标记点-多标记

11]

});

map.on(click(e){

console.log(e.lnglat);添加标记

AMap.Marker({

icon:position:[e.lnglat.R,e.lnglat.Q],offset:AMap.Pixel(-25)

});

marker.setMap(map);

})>

通过css修改标记点尺寸

先获取到样式名

.amap-icon img25px34px>

自定义图标样式

]

});自定义图标样式

marker1AMap.Icon({

size:AMap.Size(500),1)">告诉地图图片尺寸

image:1.jpg100)地图上显示的图片尺寸

})创建图标

mk1AMap.Marker({

position:[图标位置

icon:marker1指定图标样式

})

mk1.setMap(map);图标丢入地图

>

自定义标记点-多标记

marker23132.jpg60mk2121.4497920000000229.68388icon:marker2})

map.add([mk1,mk2]);图标批量加入地图

>

删除标记

方法一:marker.setMap(null)

mkicon:})

mk.setMap(map);3秒后清除标记

setTimeout((){

mk.setMap(null);

},1)">3000);>

方法二:

map.remove([marker...])

})29.668388})

map.add([mk1,mk2]);(){

map.remove([mk1,mk2]);

},1)">>

android开发 百度地图 定位+搜索周边+点击兴趣点+显示旗袍,高德地图API之地图搜索+兴趣点POI+标记点操作...相关推荐

  1. Android开发——百度地图定位

    Android开发--百度地图定位 项目需求 项目内容 注册和获取秘钥 获取项目SHA1码 获取项目AK码 AS依赖配置 AS源码 AndroidManifest文件 布局文件 DemoApplica ...

  2. qt for android开发百度地图(一步步带图详解)

    qt for android开发百度地图 前言:qt for android开发百度地图,其实找了很多资料,基本上没有,就自己折磨弄了出来,这个过程还是很曲折的,折磨了一两个星期,没有资料,就两个字' ...

  3. vue + 高德原生 API实现地图可视化

    vue + 高德原生 API 由于项目需求,需要使用地图定位,最终决定使用 vue + 高德原生API: 当前项目环境 vue2.0+: 创建项目时,如果安装 eslint ,建议关闭eslint语法 ...

  4. android百度定位代码,android开发:百度地图及定位的演示代码

    //百度地图定位的代码,需要加载百度地图API的SDK LocationClient client = new LocationClient(mContext); LocationClientOpti ...

  5. android开发百度地图定位到几内亚湾问题的解决

    android开发一直定位的几内亚湾,这个问题我大概停在这里3,4天,看网上的各种回答试了很多都不行,头疼.偶然看到一位大佬写的具体定位代码的写法,解决了这个问题.原博客https://blog.cs ...

  6. Android开发百度地图指南针消失问题

    发现最近接手的项目跟百度地图干上了,从2014年的V3.xx版本到现在的最新版,踩了不知道没踩过的多少坑.今天在维护一个2014年的老项目的时候,反馈有一条"指南针不显示,旋转后无法复位&q ...

  7. Android开发之位置定位详解与实例解析(GPS定位、Google网络定位,BaiduLBS(SDK)定位)...

    在android开发中地图和定位是很多软件不可或缺的内容,这些特色功能也给人们带来了很多方便.定位一般分为三种发方案:即GPS定位.Google网络定位以及基站定位 最简单的手机定位方式当然是通过GP ...

  8. 百度地图_自动标记/点击图标显示对应信息

    1.百度地图前端页面–根据json数据自动标记,点击标记显示对应信息. 百度地图JavaScript API :http://lbsyun.baidu.com/cms/jsapi/reference/ ...

  9. Android旋转视频工具类,Android开发实现的IntentUtil跳转多功能工具类【包含视频、音频、图片、摄像头等操作功能】...

    本文实例讲述了Android开发实现的IntentUtil跳转多功能工具类.分享给大家供大家参考,具体如下: 说明:此工具类是本人开发中总结下来的,还有其它的跳转亲给我留言,希望大家一起把这个工具类打 ...

最新文章

  1. wpf在presenter(VM)中异步更新viewer中数据
  2. 有没有一只蜻蜓永远为你守候?
  3. Velocity魔法堂系列二:VTL语法详解
  4. relocation R_X86_64_32S against `.data‘ can not be used when making a PIE object; recompile with -fP
  5. python任务栏通知区域_python+pyqt实现右下角弹出框
  6. 怎么break java8 stream的foreach
  7. Linux面试题100道
  8. Docker 私有仓库registry
  9. c#输入三个数升序排列_【每日一题】80. 两数之和输入有序数组
  10. html5 画布保存,html5 (canvas)画布save()和restore()的理解和使用方法
  11. ubuntu 双网卡内外网优先级设置
  12. 靠自己。linux manul手册入门
  13. OpenLayers - 加载静态图片(十二)
  14. EasyExcel导入和导出excel数据表格用法示例
  15. 英语单词词性顺口溜_英语词性修饰关系顺口溜
  16. ## 投标人出具哪种检测机构的报告才具有法律效力?
  17. 如果你爱上一个天枰座的女生。
  18. 【NLP】DSSM深度结构化语义模型原理
  19. Halcon+C#显示一张图片
  20. 开发中那些难题以及那些哭笑不得的解决过程

热门文章

  1. STM32编程中,float转u32和u32转float的方法
  2. 如何帮助孩子结交新朋友
  3. 淘宝tair--分布式 key/value 存储引擎
  4. 私有云和公有云区别_公共云和私有云有什么区别?
  5. 位与、位或、异或、位移运算
  6. 十几年老Java咳血推荐,你薪资涨一波没毛病!小AD以为我端午都干嘛去了?
  7. Ubuntu查看cuda版本
  8. 穿山甲平台助力开发者降本增效,技术进阶
  9. 人工智能社会学—未来新兴学科
  10. 几种非易失性存储器的比较