百度地图开发之 如何判断当前视图区域是否已经audio判断加载完毕毕?

7287人阅读
写在前面的话:
【百度地图开发之一】申请Key和配置初览显示地图(博客地址:),转载请注明。
&& & Author:hmjiangqq
&& & Email:
& 近段公司项目要实现地图定位相关的功能,而且要求指定使用百度地图,所以花点时间来学习研究一下百度地图的基本使用.今天我先和大家一起来学习申请开发Key和配置显示地图.后续文章中也会继续更新跟进百度地图一系列的文章,也请大家一起关注!
(一):申请开发Key
& & & &1:在我们使用百度地图之前,首先我们需要去BaiduMapSdK官方网站中申请key(地址为:),看到如下界面点击创建应用,填写应用名称.
& & & & & 和应用类型(for mobile)
& & & &2:开始配置应用,我们需要配置我们应用的安全码(形式为:输入“安全码”。安全码的组成规则为:Android签名证书的sha1值+“;”+packagename(即:数字签名+分号+包名))安全码的获取方式如下:我们这边使用Eclipse直接查看:&winows -& preferance-& android -& build。 如下图示:
& &3:在之前的步骤中输入安全码,sha1值+我创建的应用的包名,点击确认,这样就配置OK了:截图如下:
(二)下面我们进入第二项工作,下载SDK
& & 我们要使用Baidu地图开发,我们首先要去下载开发sdk库,下载地址:,注意:为了给用户提供更优质的服务,Android
SDK自v2.1.3版本开始采用了全新的Key验证体系。因此,当您选择使用v2.1.3及之后版本的SDK时,需要到新的Key申请页面进行全新Key的申请,申请及配置流程请参考&。(选择使用v2.1.2及之前版本SDK的开发者,的方式不变)。
& 我这边直接下载全部:
(三)下面创建项目,来显示初步的显示一下百度地图:
& & & &1.下载上面lib包,创建demo项目把jar和.so文件引入进去如下:
& & & &2.自定义Applicaiton,设置全局变量BMapManager,并且进行验证。
package&com.ztt.baidumap.&&&&import&android.app.A&&import&android.content.C&&import&android.widget.T&&import&com.baidu.mapapi.BMapM&&import&com.baidu.mapapi.MKGeneralL&&import&com.baidu.mapapi.map.MKE&&&&&&&&public&class&MyApplication&extends&Application&{&&&&&&public&static&MyApplication&instance=null;&&&&&&BMapManager&mBMapManager&=&null;&&&&&&public&boolean&m_bKeyRight&=&true;&&&&&&public&static&final&String&strKey&=&&vUAGbPwLpolIqiwWisnQPeIE&;&&&&&&&&public&static&MyApplication&getInstance(){&&&&&&&&&&return&&&&&&&}&&&&&&@Override&&&&&&public&void&onCreate()&{&&&&&&&&&&super.onCreate();&&&&&&&&&&instance=this;&&&&&&&&&&&&&&&&&&&&initEngineManager(this);&&&&&&}&&&&&&&&&&&&&&&&&&&&&private&void&initEngineManager(Context&pContext)&&&&&&{&&&&&&&&&&&if&(mBMapManager&==&null)&{&&&&&&&&&&&&&&&&&&mBMapManager&=&new&BMapManager(pContext);&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&if&(!mBMapManager.init(strKey,new&MyGeneralListener()))&{&&&&&&&&&&&&&&&&&&Toast.makeText(MyApplication.getInstance(),&&&&&&&&&&&&&&&&&&&&&&&&&&&&BMapManager&&初始化错误!&,&Toast.LENGTH_LONG).show();&&&&&&&&&&&&&&}&&&&&&}&&&&&&&&&&&&static&class&MyGeneralListener&implements&MKGeneralListener&{&&&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&public&void&onGetNetworkState(int&iError)&{&&&&&&&&&&&&&&if&(iError&==&MKEvent.ERROR_NETWORK_CONNECT)&{&&&&&&&&&&&&&&&&&&Toast.makeText(MyApplication.getInstance(),&&您的网络出错啦!&,&&&&&&&&&&&&&&&&&&&&&&Toast.LENGTH_LONG).show();&&&&&&&&&&&&&&}&&&&&&&&&&&&&&else&if&(iError&==&MKEvent.ERROR_NETWORK_DATA)&{&&&&&&&&&&&&&&&&&&Toast.makeText(MyApplication.getInstance(),&&输入正确的检索条件!&,&&&&&&&&&&&&&&&&&&&&&&&&&&Toast.LENGTH_LONG).show();&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&@Override&&&&&&&&&&public&void&onGetPermissionState(int&iError)&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&if&(iError&!=&0)&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&Toast.makeText(MyApplication.getInstance(),&&&&&&&&&&&&&&&&&&&&&&&&&&&&请在&DemoApplication.java文件输入正确的授权Key,并检查您的网络连接是否正常!error:&&+iError,&Toast.LENGTH_LONG).show();&&&&&&&&&&&&&&&&&&MyApplication.getInstance().m_bKeyRight&=&false;&&&&&&&&&&&&&&}&&&&&&&&&&&&&&else{&&&&&&&&&&&&&&&&&&MyApplication.getInstance().m_bKeyRight&=&true;&&&&&&&&&&&&&&&&&&Toast.makeText(MyApplication.getInstance(),&&&&&&&&&&&&&&&&&&&&&&&&&&&&key认证成功&,&Toast.LENGTH_LONG).show();&&&&&&&&&&&&&&}&&&&&&&&&&}&&&&&&}&&}&&
&2:MainActivity.java实现地图:
& & 布局文件如下:
&xmlns:android=&/apk/res/android&&&&&&&xmlns:tools=&/tools&&&&&&&android:layout_width=&match_parent&&&&&&&android:layout_height=&match_parent&&&&&&&&&&&&&&&&&&&&android:id=&@+id/bmapView&&&&&&&&&&&android:layout_width=&fill_parent&&&&&&&&&&&android:layout_height=&fill_parent&&&&&&&&&&&android:clickable=&true&&&&&&&&
& & 实现代码:
package&com.ztt.baidumap.&&&&import&android.app.A&&import&android.graphics.B&&import&android.os.B&&import&android.widget.T&&&&import&com.baidu.mapapi.BMapM&&import&com.baidu.mapapi.map.MKMapViewL&&import&com.baidu.mapapi.map.MapC&&import&com.baidu.mapapi.map.MapP&&import&com.baidu.mapapi.map.MapV&&import&com.api.basestruct.GeoP&&&&&&&&&&public&class&MainActivity&extends&Activity&{&&&&&&&&&&&&&&private&MapView&mMapView&=&null;&&&&&&&&&&&&&&private&MapController&mMapController&=&null;&&&&&&&&&&&&&&MKMapViewListener&mMapListener&=&null;&&&&&&@Override&&&&&&protected&void&onCreate(Bundle&savedInstanceState)&{&&&&&&&&&&super.onCreate(savedInstanceState);&&&&&&&&&&&&&&&&&&&&&&&&MyApplication&app&=&(MyApplication)this.getApplication();&&&&&&&&&&if&(app.mBMapManager&==&null)&{&&&&&&&&&&&&&&app.mBMapManager&=&new&BMapManager(getApplicationContext());&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&app.mBMapManager.init(MyApplication.strKey,new&MyApplication.MyGeneralListener());&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&setContentView(R.layout.main_layout);&&&&&&&&&&&&mMapView&=&(MapView)findViewById(R.id.bmapView);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&mMapController&=&mMapView.getController();&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&mMapController.enableClick(true);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&mMapController.setZoom(12);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&double&cLat&=&39.945;&&&&&&&&&&&&&&&&double&cLon&=&116.404;&&&&&&&&&&&&&&&&GeoPoint&p&=&new&GeoPoint((int)&(cLat&*&1E6),&(int)&(cLon&*&1E6));&&&&&&&&&&&&&&&mMapController.setCenter(p);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&mMapListener&=&new&MKMapViewListener()&{&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&&&&&&&&&public&void&onMapMoveFinish()&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&&&&&&&&&public&void&onClickMapPoi(MapPoi&mapPoiInfo)&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&String&title&=&&&;&&&&&&&&&&&&&&&&&&&&&&if&(mapPoiInfo&!=&null){&&&&&&&&&&&&&&&&&&&&&&&&&&title&=&mapPoiInfo.strT&&&&&&&&&&&&&&&&&&&&&&&&&&Toast.makeText(MainActivity.this,title,Toast.LENGTH_SHORT).show();&&&&&&&&&&&&&&&&&&&&&&&&&&mMapController.animateTo(mapPoiInfo.geoPt);&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&&&&&&&&&public&void&onGetCurrentMap(Bitmap&b)&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&&&&&&&&&public&void&onMapAnimationFinish()&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&&&&&&&&&public&void&onMapLoadFinish()&{&&&&&&&&&&&&&&&&&&&&&&Toast.makeText(MainActivity.this,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&地图加载完成&,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&Toast.LENGTH_SHORT).show();&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&};&&&&&&&&&&&&&&mMapView.regMapViewListener(MyApplication.getInstance().mBMapManager,&mMapListener);&&&&&&}&&&&&&&@Override&&&&&&&&&&protected&void&onPause()&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&mMapView.onPause();&&&&&&&&&&&&&&super.onPause();&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&protected&void&onResume()&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&mMapView.onResume();&&&&&&&&&&&&&&super.onResume();&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&protected&void&onDestroy()&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&mMapView.destroy();&&&&&&&&&&&&&&super.onDestroy();&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&protected&void&onSaveInstanceState(Bundle&outState)&{&&&&&&&&&&&&&&super.onSaveInstanceState(outState);&&&&&&&&&&&&&&mMapView.onSaveInstanceState(outState);&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&@Override&&&&&&&&&&protected&void&onRestoreInstanceState(Bundle&savedInstanceState)&{&&&&&&&&&&&&&&super.onRestoreInstanceState(savedInstanceState);&&&&&&&&&&&&&&mMapView.onRestoreInstanceState(savedInstanceState);&&&&&&&&&&}&&}&&
& 3:加入权限配置:
&android:name=&android.permission.MOUNT_UNMOUNT_FILESYSTEMS&&&&&&&&android:name=&android.permission.BAIDU_LOCATION_SERVICE&&&&&&&&android:name=&android.permission.ACCESS_NETWORK_STATE&&&&&&&&android:name=&android.permission.ACCESS_COARSE_LOCATION&&&&&&&&android:name=&android.permission.INTERNET&&&&&&&&android:name=&android.permission.ACCES_MOCK_LOCATION&&&&&&&&android:name=&android.permission.ACCESS_FINE_LOCATION&&&&&&&&android:name=&com.android.launcher.permission.READ_SETTINGS&&&&&&&&android:name=&android.permission.WAKE_LOCK&&&&&&&&android:name=&android.permission.CHANGE_WIFI_STATE&&&&&&&&android:name=&android.permission.ACCESS_WIFI_STATE&&&&&&&&android:name=&android.permission.ACCESS_GPS&&&&&&&&&&&&&android:name=&android.permission.GET_TASKS&&&&&&&&android:name=&android.permission.WRITE_EXTERNAL_STORAGE&&&&&&&&android:name=&android.permission.BROADCAST_STICKY&&&&&&&&android:name=&android.permission.WRITE_SETTINGS&&&&&&&&&&&&&android:name=&android.permission.PROCESS_OUTGOING_CALLS&&&&&&&&android:name=&android.permission.READ_PHONE_STATE&&&&&&&&android:name=&android.permission.MODIFY_AUDIO_SETTINGS&&&&&&&&android:name=&android.permission.RECORD_AUDIO&&&&
& 4: 运行截图:
(四):代码中实现百度地图用的几个类简要说明:
& & & &1:MapController:地图引擎管理类:BMapManager据有Application级别的生命周期,BMapManager应在sdk功能模块使用前初始化, 并且在sdk功能模块销毁后销毁.
& & & &2:MapView:一个显示地图的视图,当被焦点选中时,它能捕获按键事件和触摸手势去平移和缩放地图。MapView的创建可以使用在XML布局的方式创建,也可以使用构建函 & & & & & 数创建MapView的生命周期需要与Activity同步,即需要在Activity.onPause中调用,
在Activity.onResume中调用,在Activity.onDestroy中调用destory();
来源:http://blog.csdn.net/developer_jiangqq/article/details/
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:248894次
积分:3241
积分:3241
排名:第5272名
转载:338篇
评论:78条
(1)(1)(2)(1)(1)(3)(7)(7)(5)(2)(3)(11)(9)(2)(7)(10)(3)(2)(3)(20)(23)(1)(12)(17)(8)(16)(28)(46)(44)(12)(31)(7)出处:/摘要:
百度地图API的官网上提供了常用坐标转换的示例。但是,一次只能转换一个,真的非常麻烦!!这里结合了官方的示例,自制一个批量转换工具,供大家参考。
------------------------------------------------------------------------------------------
因为我没有GPS坐标,就拿谷歌坐标做个示例了。
首先要注意的是,百度和谷歌的经纬度坐标顺序是相反的。
比如,谷歌的经纬度是
new google.maps.LatLng(39.83, 116.9)
传入坐标转换接口的百度经纬度应该是
new BMap.Point(116.9,39.83)
所以,我建立一个数组,存放转换前的经纬度。创建百度的坐标点,但是用谷歌的经纬度。
//注意:百度和谷歌的经纬度坐标顺序是相反的。var points = [new BMap.Point(116.9,39.83),
new BMap.Point(116.32,39.71),
new BMap.Point(116.35,39.574),
new BMap.Point(116.88,39.29),
new BMap.Point(116.72,39.71)
然后调用官方公布的接口
BMap.Convertor.transMore(points,2,callback);
自己对这个坐标转换接口做了修改,让它可以多次返回结果。注意看注释部分。
据说,百度坐标转换接口,有50次/秒的限制。
function transMore(points,type,callback){
for(var index in points){
if(index & 50){return;}
var xyUrl = "http://api./ag/coord/convert?from=" + type +
&&to=4&x=& + points[index].lng + //这里要循环读入数组points的lng数据,直到points.length完毕。
&&y=& + points[index].lat +
&&callback=callback&;
//动态创建script标签
load_script(xyUrl);
进过上一步,坐标就转换好了。成为百度坐标了。但这时的百度坐标是加密的。看不懂……
好在,我们可以直接利用这些加密的编码创建出Marker标注点。获取到对象后,直接使用即可。
function callback(xyResult){
if(xyResult.error != 0){return;}//出错就直接返回;
var point = new BMap.Point(xyResult.x, xyResult.y);
var marker = new BMap.Marker(point);
map.addOverlay(marker);
map.setCenter(point);// 由于写了这句,可以每一个被转的点都是中心点的过程}
到这里,批量转换就讲完啦~~
下面说说我自己添加的其他功能:如何获取地图上的坐标点。
---------------------------------------------------------------------------------------------
如何获取地图上的坐标点,经纬度?
先说说谷歌的:给地图添加事件,点击地图后直接弹出。
google.maps.event.addListener(map, 'click', function(e) {
alert(e.latLng);
在说说百度的,也是给地图添加事件。
map.addEventListener("click",function(e){
alert(e.point.lng + "," + e.point.lat);});
大家发现谷歌和百度有什么不同了没有?
对了,谷歌的经纬度像是封装在一起了样。而百度的经纬度是分开地~~~
----------------------------------------------------------------------------------------
全部源代码:
有两个文件,一个是htm,另一个是修改后的官方坐标转换js。
批量转换.htm
&!DOCTYPE html&&html&&head&&meta http-equiv="Content-Type" content="text/ charset=gb2312" /&&script type="text/javascript" src="changeMore.js"&&/script&&title&批量转换坐标&/title&&/head&&body&&input onclick="magic();" value="批量转换" type="button" /&(据说有50次/秒的限制哦)&hr /&&div style="clear:both"&&div style="float:"&&h4&谷歌地图&/h4&&div style="width:520height:340border:1px solid gray" id="map_canvas"&&/div&&p&鼠标点击的谷歌坐标是:&span id="info"&&/span&&/p&&script type="text/javascript" src="/maps/api/js?sensor=false"&&/script&&script type="text/javascript"&function initialize() {
var myOptions = {
zoom: <span style="background-color:#f5f5f5;color:#,
center: new google.maps.LatLng(<span style="background-color:#f5f5f5;color:#.82, <span style="background-color:#f5f5f5;color:#6.46),
mapTypeId: google.maps.MapTypeId.ROADMAP
var map = new google.maps.Map(document.getElementById('map_canvas'),myOptions);
google.maps.event.addListener(map, 'click', function(e) {
document.getElementById("info").innerHTML = e.latL
var marker1 = new google.maps.Marker({
position: new google.maps.LatLng(<span style="background-color:#f5f5f5;color:#.83, <span style="background-color:#f5f5f5;color:#6.9),
var marker2 = new google.maps.Marker({
position: new google.maps.LatLng(<span style="background-color:#f5f5f5;color:#.71, <span style="background-color:#f5f5f5;color:#6.32),
var marker3 = new google.maps.Marker({
position: new google.maps.LatLng(<span style="background-color:#f5f5f5;color:#.574, <span style="background-color:#f5f5f5;color:#6.35),
var marker4 = new google.maps.Marker({
position: new google.maps.LatLng(<span style="background-color:#f5f5f5;color:#.29, <span style="background-color:#f5f5f5;color:#6.88),
var marker5 = new google.maps.Marker({
position: new google.maps.LatLng(<span style="background-color:#f5f5f5;color:#.71, <span style="background-color:#f5f5f5;color:#6.72),
google.maps.event.addDomListener(window, 'load', initialize);&/script&&/div&&div style="float:"&&h4&百度地图&/h4&&div style="width:520height:340border:1px solid gray" id="container"&&/div&&p&鼠标点击的百度坐标是:(&span id="info2"&&/span&)&/p&&script type="text/javascript" src="http://api./api?v=1.2"&&/script&&script type="text/javascript"&var map = new BMap.Map("container");map.centerAndZoom(new BMap.Point(<span style="background-color:#f5f5f5;color:#6.404, <span style="background-color:#f5f5f5;color:#.915), <span style="background-color:#f5f5f5;color:#);varvar markers = [];map.addEventListener("click",function(e){
document.getElementById("info2").innerHTML = e.point.lng + "," + e.point.});//注意:百度和谷歌的经纬度坐标顺序是相反的。var points = [new BMap.Point(<span style="background-color:#f5f5f5;color:#6.9,<span style="background-color:#f5f5f5;color:#.83),
new BMap.Point(<span style="background-color:#f5f5f5;color:#6.32,<span style="background-color:#f5f5f5;color:#.71),
new BMap.Point(<span style="background-color:#f5f5f5;color:#6.35,<span style="background-color:#f5f5f5;color:#.574),
new BMap.Point(<span style="background-color:#f5f5f5;color:#6.88,<span style="background-color:#f5f5f5;color:#.29),
new BMap.Point(<span style="background-color:#f5f5f5;color:#6.72,<span style="background-color:#f5f5f5;color:#.71)
];function callback(xyResult){
if(xyResult.error != <span style="background-color:#f5f5f5;color:#){return;}//出错就直接返回;
var point = new BMap.Point(xyResult.x, xyResult.y);
var marker = new BMap.Marker(point);
map.addOverlay(marker);
map.setCenter(point);// 由于写了这句,可以每一个被转的点都是中心点的过程}function magic(){
BMap.Convertor.transMore(points,<span style="background-color:#f5f5f5;color:#,callback);}&/script&&/div&&/div&&/body&&/html&
changeMore.js
//<span style="color:#11-7-25 zhangying(function(){function load_script(xyUrl, callback){
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = xyU
//借鉴了jQuery的script跨域方法
script.onload = script.onreadystatechange = function(){
if((!this.readyState || this.readyState === "loaded" || this.readyState === "complete")){
callback && callback();
// Handle memory leak in IE
script.onload = script.onreadystatechange = null;
if ( head && script.parentNode ) {
head.removeChild( script );
// Use insertBefore instead of appendChild
to circumvent an IE6 bug.
head.insertBefore( script, head.firstChild );}function transMore(points,type,callback){
for(var index in points){
if(index & 50){return;}
var xyUrl = "http://api./ag/coord/convert?from=" + type +
&&to=4&x=& + points[index].lng + //这里要循环读入数组points的lng数据,直到points.length完毕。
&&y=& + points[index].lat +
&&callback=callback&;
//动态创建script标签
load_script(xyUrl);
}}window.BMap = window.BMap || {};BMap.Convertor = {};BMap.Convertor.transMore = transM})();
18:05 评论: 2  最新新闻:· ( 11:02)· ( 11:01)· ( 10:59)· ( 10:56)· ( 10:55)编辑推荐:网站导航:
相关 [百度地图 api 百度] 推荐:
- CSDN博客推荐文章
百度地图API--Hello World.
这里引用一个经典的单词&Hello World&,这个词是程序界所有人都很熟悉的,我在开始学习Java的时候就是从这开始的,什么编写一个Hello World程序,甚至有的面试题中有“写一个输出Hello World的程序”来测试面试者的面向对象的思维. 下面,也从Hello World来引入百度地图API的开发. // BMap是百度地图API的命名空间,所有的类都在这里面. var map = new BMap.Map(&container&); // 创建一个Map对象. var point = new BMap.Point(116.404, 39.915); // 创建一个点对象.
- CSDN博客Web前端推荐文章
我们可以在地图上添加一些本文覆盖物,用来标注一些信息,前一节我们学习了标注点的使用以及标注点的点击和拖拽事件,标注点用到了BMap命名空间下的Marker类,文本标注域则是用到了Label类,下面介绍如何添加一个文本标注域. position : map.getCenter(), // 指定文本标注所在的地理位置. offset : createSize(30, -30) // 设置文本偏移量,createSize方法在Global.js中. var label = new BMap.Label(&欢迎使用百度地图,我是简单的文本标注~&,
opts); // 创建文本标注对象.
- CSDN博客Web前端推荐文章
在百度地图api中,默认的地图图标是一个红色的椭圆形. 但是在项目中常常要求我们建立自己的图标,类似于我的这个. 操作很简单,分如下几步进行. 步骤一:先ps一个图标,大小要合适,如果要背景透明的,记得保存成png格式. 推荐一个在线ps网站
/. 做好图片之后,如果你使用vs或其他控制谈调用的百度地图api,要把图片放到debug文件夹中. 步骤二:在html语句中加入:. anchor: new BMap.Size(10, 30)//这句表示图片相对于所加的点的位置
var mkr = new BMap.Marker(new BMap.Point(116.986), {.
- Pei - 博客园-首页原创精华区
百度地图API的官网上提供了常用坐标转换的示例. 但是,一次只能转换一个,真的非常麻烦. 这里结合了官方的示例,自制一个批量转换工具,供大家参考. 因为我没有GPS坐标,就拿谷歌坐标做个示例了. 首先要注意的是,百度和谷歌的经纬度坐标顺序是相反的. 传入坐标转换接口的百度经纬度应该是. 所以,我建立一个数组,存放转换前的经纬度. 创建百度的坐标点,但是用谷歌的经纬度. //注意:百度和谷歌的经纬度坐标顺序是相反的. 自己对这个坐标转换接口做了修改,让它可以多次返回结果. 据说,百度坐标转换接口,有50次/秒的限制. &&to=4&x=& + points[index].lng + //这里要循环读入数组points的lng数据,直到points.length完毕.
- 丁丁 - 月光博客
  据百度地图微博报道,11月15日,百度地图正式上线卫星地图功能,目前首批覆盖的城市包括北京、上海、广州、深圳等35个城市,由中国四维提供影像数据.   卫星地图是百度地图新增加的地图浏览模式,目前用户可以在百度地图中选择使用“地图”、“卫星”和“三维”三种不同的视图. 通过新增的的“卫星地图”模式,用户可以看到真实的遥感卫星图像,查看到原有地图上无法涵盖的细节.   百度手机地图目前还没有同步更新卫星地图,不过预计稍后也会更新这个功能.   目前我浏览的过程中发现,百度的卫星地图只支持中国主要大城市的地图,偏远地区不提供卫星地图,也不提供中国以外国家的卫星地图.   据百度地图负责人透露,百度地图所用的卫星遥感图像由中国四维测绘技术有限公司提供.
- snoopyxdy的博客
近期的一个phonegap项目把我做的焦头烂额,最让人蛋疼的就是安卓4.1.x对html5的定位获取经纬度有个无比巨大的坑,一般我们利用如下代码进行html5的定位. 另外一个巨坑也直接影响了我对这个问题的判断,如果我重启了安卓4.1的机器,那么上述代码将能够正常跑大约几小时,甚至半天,可是到了第二天又会出现同样的问题,无尽的timeout. 总不能让客户每次使用定位功能都重启一次机器吧,涉及这个问题的机器有包括我的华为,三星note2,oppo等目前主流的安卓4.1系统的机子,在另外几台例如glasky3、红米等安卓4.3的机器上没有出现. 然后我直接将上述代码在浏览器中运行,发现安卓4.1也是无法跑起来,天真的我以为是安卓4.1对html5的接口支持问题,于是利用cordova加载geolocation插件,想利用cordova的native方法解决这个问题,但是问题依旧,其中意外的发现我的华为和note2能够跑起来了,其实只不过碰巧刚重启过而已.
- Daimon - 爱Apps - www.iapps.im
精选限时免费应用,由 AppPusher 为您送达. 无限精彩,尽在 爱Apps - www.iapps.im. 本站原创内容,转载时请务必注明出处,谢谢. 大小: 3.8 MB
系统: 3.0+. 百度地图出了,小编实测了一下,定位很准确,而百度地图本身的资源也是比较新的,这款刚上架不久的百度地图,适合iPhone和iPod,支持手机内下载各省市离线包(很遗憾没发现电脑端传输功能),基本上略大点的二三线城市都有,还是很不错的,大家可以试试. 1、搜索:搜地点,搜公交,搜地铁,更准更全面. 2、路线:公交,驾车,步行,三种出行方式自由选择. 3、附近:方便快捷搜索周边,发现更多地点. 4、离线地图:大幅节省流量,加速浏览,贴心又实用.
- CSDN博客移动开发推荐文章
Place详情展示页面可以帮助开发者便捷的展示Poi详情信息,此外通过详情展示页面您还可以实现电话的拨打等功能. 今天将向大家介绍Place详情页的具体使用方法.
第一步,创建工程,并放置基础地图mapview控件(详细介绍请参考:
百度地图SDK for Android【Demo地图展示】
). 布局文件代码及主程序中的代码如下:. &!-- 放入百度地图的mapview --&. // 初始化管理对象,注意要在setContentView(R.layout.activity_main)之前初始化,否则会报错. bMapManager.init(&你的key&, null);.
  在厦门有一个小的O2O圈子,它们从事领域丰富,从运动社区到本地垂直服务乃至情趣电商,因为这样或那样的原因,他们都未走入一线城市. 深耕本地化的他们作为O2O从业者的典型代表对各家地图服务更有发言权. 在聊天中,巴人发现,他们都在LBS服务上不约而同的选择了百度地图,而其中也有开发者刚刚从其它平台切换至百度,面对这样一边倒的局面,首先声明,他们未受利益驱动,纯属自发行为.   首先我想弄个明白一个问题,作为O2O开发者在对地图平台选择时他们到底关心什么,大家的答案,不出以下几点(排名顺序分先后):1、除了地图我还能得到什么?2、数据是否能通用?3、我的数据是否安全?4、我不想跟你了怎么办?5、地图数据精准性.
- CSDN博客互联网推荐文章
多说无益,首先贴两张图让大家看看具体的效果:. 图2、Arcgis for Javascript实现的效果. 看到了效果,是不是各位有点小鸡动,是不是也宠宠欲动,有木有. 下面我来详细的给各位说说我的实现思路吧. 其实搜索的对象从类型上来说,应该是点、线、面都支持的,但是在实际的操作过程中,不论是百度还是我自己做的时候,都会将所有的对象抽成点对象,也就是将每一个对象转换成为POI热点,再将对象的坐标信息提取出来,将所有对象入库. 实现该效果,首先,根据用户的查询条件从数据库里面获取数据,数据返回给web端的是JSON格式的. 获取到数据之后,接着做数据在左侧的分页展示与地图上与左侧列表相对应的展示,左侧列表的展示我就不详细说了,做过web的大家都有一万种方法去实现它,重点说说地图上的展示.
坚持分享优质有趣的原创文章,并保留作者信息和版权声明,任何问题请联系:@。

我要回帖

更多关于 js判断图片加载完毕 的文章

 

随机推荐