地图无法定位当前位置,苹果地图无法定位当前位置
地图如何定位到当前位置?
以小米手机为例
方法如下
1、首先打开手机击打开。
2、回到手机的桌面找到“设置”选项打开。
2、打开设置界面找到“定位服务”选项,如下图所示,点击打开。
3、如下图,进入定位服务界面。
4、在里面会看到手机上所有安装的应用,找到地图打开。
5、最后打开的界面选择“允许”即可。
地图 定位的实现
今天发现自己好笨啊。。。一直在搞定位,想为什么会是空的,原来定位也是需要代理去实现的
在初始化地图的时候,也就是在viewdidload里面是这样的
[objc] view plain copy
mapview.showsuserlocation = yes;
if (mapview.userlocation.location != nil)
{
nslog(@"定位成功");
coor = [[mapview.userlocation location] coordinate];
nslog(@"%f",coor.latitude);
nslog(@"%f",coor.longitude);
}
bmkcoordinateregion viewregion = bmkcoordinateregionmake(coor, bmkcoordinatespanmake(0.02f,0.02f));
bmkcoordinateregion adjustedregion = [mapview regionthatfits:viewregion];
[mapview setregion:adjustedregion animated:yes];
一直以为是这样的呢,因为设定了showuserlocation 在去取到当前的userlocation就好了呢,这样做是不会立马就定位到的,它内部的实现是在子线程去定位,
然后通过代理方法去更新当前的用户位置的,好晕啊,仔细一找 ,就找到了这个更新用户当前位置的代理方法
[objc] view plain copy
/**
*用户位置更新后,会调用此函数
*@param mapview 地图view
*@param userlocation 新的用户位置
*/
- (void)mapview:(bmkmapview *)mapview didupdateuserlocation:(bmkuserlocation *)userlocation;
那么就去实现它好了,这个时候应该是定位到了用户的位置了,也就是这个userlocation了
[objc] view plain copy
#pragma mark mapviewdelegate 代理方法
- (void)mapview:(bmkmapview *)mapview1 didupdateuserlocation:(bmkuserlocation *)userlocation
{
bmkcoordinateregion region;
region.center.latitude = userlocation.location.coordinate.latitude;
region.center.longitude = userlocation.location.coordinate.longitude;
region.span.latitudedelta = 0.2;
region.span.longitudedelta = 0.2;
if (mapview)
{
mapview.region = region;
nslog(@"当前的坐标是: %f,%f",userlocation.location.coordinate.latitude,userlocation.location.coordinate.longitude);
}
}
总结
实现定位必须
1.初始化mapview
2.设置mapview的showuserlocation的属性为yes
3.去实现didupdateuserlocation代理来实现当前位置显示在可视范围内
小知识的积累,定是大财富的源泉。虚心学习,每天进步一点点。
在手机上,在地图左测下方有一个圈形的小图标,点一下就是定位当前位置。在电脑上的话,应该是在右侧下方也有一个类似的圆形图标。
安卓开发之地图定位无法跳转到当前位置?
是你用地图SDK开发的地图无法跳过去吗,SDK已经升级过了的,很多以前老的方法已经不行了的,最好看看地图官方API
mapstatus mmapstatus = new mapstatus.builder() .target(你点击位置的latlng) .zoom(18) .build(); //定义mapstatusupdate对象,以便描述地图状态将要发生的变化 mapstatusupdate mmapstatusupdate = mapstatusupdatefactory.newmapstatus(mmapstatus); //改变地图状态 mbaidumap.animatemapstatus(mmapstatusupdate);
地图无法定位?
如果使用地图或导航,建议在设置的位置服务先勾选Google的位置服务、GPS卫星、使用增强型GPS,然后打开网络连接(最好用E网),这样打开地图或导航来定位快很多,定位后如果只是用导航,可以将网络连接关了。
地图使用的是机站定位,网络设置有cmnet cmwap两种,都可以。你那个一般是地图软件版本太低导致。你最新的安装版地图就能定位了。
google地图无法定位?
装的google地图 暂时无法显示您的位置。 其他的地图就可以用,比如地图那就不用啊~~~又不是离了他就不能活了 个人感觉还是图吧导航准,
谷歌地图无法定位?
可能是禁用了谷歌的位置服务。打开系统设置,里面有位置安全,允许谷歌服务手机你的位置信息。希望能够帮助到你!
上一篇 :地图上的字能去掉吗?去掉地图上的字