所以我有一个包含地图片段的空片段。 每当我尝试激活包含地图的片段,我的应用程序崩溃,并在这一行返回一个空指针错误: map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)) .getMap(); 完整的错误信息: java.lang.NullPointerException: Attempt to invoke virtual method 'com.google.android.gms.maps.GoogleMap com.google.android.gms.maps.MapFragment.getMap()' on a null object reference at com.collusion.serviceassistant.ReturnVisitDetails.onViewCreated(ReturnVisitDetails.java:39) at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:904) at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1062) at android.app.BackStackRecord.run(BackStackRecord.java:684) at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1447) at android.app.FragmentManagerImpl$1.run(FragmentManager.java:443) at android.os.Handler.handleCallback(Handler.java:733) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5001) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601) 这是我的片段代码: import android.app.Activity; import android.app.Dialog; import android.net.Uri; […]
所以我使用下面的代码在我的绘图方法中绘制了android地图中的这个三angular形: paint.setARGB(255, 153, 29, 29); paint.setStyle(Paint.Style.FILL_AND_STROKE); paint.setAntiAlias(true); Path path = new Path(); path.moveTo(point1_returned.x, point1_returned.y); path.lineTo(point2_returned.x, point2_returned.y); path.moveTo(point2_returned.x, point2_returned.y); path.lineTo(point3_returned.x, point3_returned.y); path.moveTo(point3_returned.x, point3_returned.y); path.lineTo(point1_returned.x, point1_returned.y); path.close(); canvas.drawPath(path, paint); pointX_returned是我从字段中获得的坐标。 他们基本上是纬度和经度。 结果是一个很好的三angular形,但内幕是空的,所以我可以看到地图。 有办法填补它以某种方式?
我将使用其他jQuery工具提示插件而不是Google Maps API的默认信息窗口。 所以我需要得到标记的DIV和它的像素位置。 但不能得到它,因为没有特定标记的id或类。 只有我可以从标记对象和未logging的pixelBounds对象访问地图canvas div。 我如何访问标记的DIV? 我在哪里可以得到DIV的像素位置? 我可以将lat-lng位置转换为像素值吗? ==附加: 我也尝试了下面的代码,但是当我滚动地图时它不会改变。 var marker = new google.maps.Marker({…}); google.maps.event.addListener(marker, 'click', function() { var px = this.getMap().getProjection().fromLatLngToPoint(this.getPosition()); console.log("(" + px.x + "," + px.y + ")"); });
我试图从Google地图获取(指定)区域边界作为GMaps坐标(形成折线)。 这在某种程度上可能吗? (来自maps.google.com或我自己的域名中的我自己的GMaps)。 注意:我知道你可以使用专门的工具手动绘制/勾画区域(比如http://www.birdtheme.org/useful/v3tool.html ),但是精确地覆盖了一个大的区域是一大堆工作。 在这种情况下,自己动手回答不是一个选项。 例: https://maps.google.com/ – >input“Uusimaa,Finland” 您可以看到概述想要的区域的粉红色的边界 该边框是我需要的坐标的多段线 要求: 从给定的search中提取区域数据坐标(如果可用)(如示例中所示) 如果以前是不可能的,则需要提供一个精确的地图“Uusimaa,芬兰”的地图(普通的谷歌search没有得到所需的结果)。
在谷歌地图api v2这很容易, var map = new GMap2(document.getElementById("map")); map.setCenter(new GLatLng(53.7877, -2.9832),13) // map.addControl(new GLargeMapControl()); // map.addControl(new GMapTypeControl()); var dirn = new GDirections(); // var firstpoint = true; var gmarkers = []; var gpolys = []; var dist = 0; // == When the user clicks on a the map, get directiobns from that point to itself […]
地图标记的默认Google地图信息窗口非常圆。 如何创build一个方形angular的自定义InfoWindow?
如何让Google Maps API v2中的标记变得可点击,以便他们调出带有选项的菜单或者只是启动一项新的活动? 我相信我在我的应用程序当前在“newb”方法中做了标记。 我没有给他们分配一个名字或方法,以便能够将其与所需的其他代码链接起来。 googleMap.addMarker(new MarkerOptions() .position(latLng) .title("My Spot") .snippet("This is my spot!") .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE))); 如果您回答这个问题,请包含一个标记的示例代码,该代码被引入一个唯一的名称,然后设置为可点击打开一个新的活动。
当我在我的Google Maps v3上点击主页图标时,出现我的InfoWindow,它没有正确自动调整InfoWindow的内容。 它不应该给滚动条。 InfoWindow应该适当地自动resize。 任何想法为什么? 根据请求,为InfoWindow注入HTML的相关JavaScript: listing = '<div>Content goes here</div>';
它不需要100%正确,它可以是边界矩形的中心。
根据http://code.google.com/intl/sk-SK/apis/maps/documentation/javascript/places.html#places_autocomplete,我已成功在自己的input框中实现了Google地图位置V3自动完成function。 它很好地工作,但我很想知道如何使用户按下input时,从build议中select第一个选项。 我想我会需要一些JS的魔力,但我是非常新的JS,不知道从哪里开始。 提前致谢!