Articles of android mapview

使用经度和纬度比较两个位置

嗨我需要在onchangelocation()上调用一个事件,通过比较当前纬度和经度与一些保存的纬度和经度,但我得到一个错误。 日食不识别关键词距离,并且对于校正错误,它给出提示箱子方法“距离”有4参数…如何修复它? 或其他一些方式做同样的工作??? 感谢致敬。 代码附在下面 @Override public void onLocationChanged(Location location) { double currentLat=location.getLatitude(); double currentLon=location.getLongitude(); if (distance(lat,lon,currentLat,currentLon)<2.0){ //do what you want to do… } }

如何在Android中获取地图上的纬度和经度?

如何获取我在Android中长时间点击地图的特定位置的纬度和经度值?

ItemizedOverlay.getIndexToDraw中的NullPointerException

我有一个相对简单的MapActivity,我试图在给定的地图区域内显示一个“阵营”列表。 我创建了一个名为CampOverlayItem的OverlayItem的自定义子类,一个名为CampsOverlay的自定义ItemizedOverlay,它返回CampOverlayItems,当然还有填充地图的MapActivity子类。 我正在使用我的活动中创建的AsyncTask从数据库中提取叠加数据。 AsyncTask是从附加到MapView的ViewTreeObserver.OnGlobalLayoutListener触发的。 在AsyncTask的onPostExecute方法中,我创建了一个CampsOverlay类的新实例,并向其传递了一个从数据库返回的阵营列表(在doInBackground中获取)。 然后我打电话给: mapView.getOverlays().add(newOverlay); newOverlay是我刚刚创建的CampsOverlay。 所有这些代码都运行没有错误,但是当Map尝试绘制自己时,我得到一个带有以下堆栈跟踪的NullPointerException: java.lang.NullPointerException at com.google.android.maps.ItemizedOverlay.getIndexToDraw(ItemizedOverlay.java: 211) at com.google.android.maps.ItemizedOverlay.draw(ItemizedOverlay.java:240) at com.google.android.maps.Overlay.draw(Overlay.java:179) at com.google.android.maps.OverlayBundle.draw(OverlayBundle.java: 42) at com.google.android.maps.MapView.onDraw(MapView.java:476) at android.view.View.draw(View.java:6274) at android.view.ViewGroup.drawChild(ViewGroup.java:1526) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256) at android.view.ViewGroup.drawChild(ViewGroup.java:1524) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256) at android.view.View.draw(View.java:6277) at android.widget.FrameLayout.draw(FrameLayout.java:352) at android.view.ViewGroup.drawChild(ViewGroup.java:1526) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256) at android.view.ViewGroup.drawChild(ViewGroup.java:1524) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256) at android.view.ViewGroup.drawChild(ViewGroup.java:1524) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256) at android.view.ViewGroup.drawChild(ViewGroup.java:1524) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256) at android.view.ViewGroup.drawChild(ViewGroup.java:1524) at […]

如何配置android map sdk v2使用不同的密钥进行生产和开发?

我想自动设置不同的android map api V2键进行开发和制作。

隐藏android google maps API v2中的标记信息窗口

目前,我可以使用Android Google Maps API v2在Google地图中查看我的所有标记。 在地图中添加我的标记: mapView.addMarker (new MarkerOptions() .position(aUsersLocation). icon(BitmapDescriptorFactory.fromBitmap(aUserImage)) .snippet(My_VALUE_1) .title(My_VALUE_2) .hideInfoWindow(); 我有几个标记,并为每个标记的代码段和标题分配了几个值(My_VALUE_1和My_VALUE_2)。 当用户点击标记时,我需要这些唯一值,我将在onMarkerClick监听器中收到以下值: @Override public boolean onMarkerClick(Marker theMarker) { String aValue1 = theMarker.getSnippet(); String aValue2 = theMarker.getTitle(); theMarker.getPosition().latitude… … return false; } 我的问题是:当我将标题和标题值添加到标记时,当用户单击标记时,会显示infoWindow。 我需要隐藏标记的infoWindow。 我尝试使用hideInfoWindow ,但它似乎无法正常工作。 请给我任何建议。 谢谢。

Android的; MapView,我该如何设置默认位置?

在android中使用MapView,如何设置默认位置,以便每次加载此应用程序时,它会自动居中/缩放伦敦的位置?

禁用在mapview中移动

是否可以禁用在谷歌地图内移动?

Android – IllegalStateException:map的大小为零

我是新手android程序员。 让我给出一些背景信息。 我的项目使用ActionBarSherlock。 我有一个包含两个片段的活动(Activity1) – 一个SherlockListFragment和一个包含谷歌地图MapView(本质上是一个MapFragment)的SherlockFragment。 搜索结果显示在列表片段和地图片段中,操作栏选项按钮切换列表和地图之间当前显示的片段。 选择列表中的项目或搜索结果的地图会启动一个新活动(Activity2),显示所选项目的数据。 这个新活动有一个类似的流程:一个显示数据的片段,一个显示位置的地图片段 – 由一个操作栏选项按钮切换。 问题: 我可以在搜索结果(Activity1)列表片段中选择一个列表项,并且成功启动详细信息页面(Activity2)。 当我从(Activity1)中的地图覆盖中选择一个地图项时,应用程序崩溃,我得到如下所示的堆栈跟踪。 到目前为止我尝试了什么: 我搜索了“地图零大小”和相同搜索的许多排列,包括“android”和“illegalstateexception”以及堆栈跟踪的各种行,我检查了甚至与android没有关系但与谷歌地图apis一般,我无法find任何地方或任何人遇到此错误除了在这个urlhttp://www.androidpub.com/1551654但我不知道韩国,谷歌翻译没什么帮助。 我试图find一些源代码片段来看看发生了什么,但事实并非如此。 我已经在我的代码中添加了日志以尝试确定exception发生的位置,并且我能够find的所有内容都发生在(Activity2)细节活动开始后的某个时间,也就是在调用onCreate()之后。 并且详细信息片段和地图片段都已在onCreate()中成功实例化了booth。 我无法在我的代码中find一个位置来捕获exception。 因此,对于我能看到的所有内容,此exception似乎完全是谷歌MapView代码中的错误,但如果我在任何地方犯了错误,请显示它。 我愿意向任何可以告诉我这里发生了什么的人提供帮助。 所以,总结一下。 从具有当前显示的mapview的活动(Activity1)转到另一个也包含另一个mapview的片段的Activity(Activity2)时发生崩溃。 但是,当从(Activity1)中显示的列表片段转到包含另一个映射片段的其他活动(Activity2)时,不会发生崩溃。 我希望这足够详细。 如果您有任何疑问,请发表评论。 D/memalloc( 121): /dev/pmem: Allocated buffer base:0x4215c000 size:2088960 offset:4177920 fd:66 D/memalloc(30944): /dev/pmem: Mapped buffer base:0x5b4f5000 size:6266880 offset:4177920 fd:164 D/AndroidRuntime(30944): Shutting down VM W/dalvikvm(30944): threadid=1: thread exiting with uncaught exception […]

在Android中旋转MapView

我正在编写一个Android应用程序,其中一个function是地图将根据指南针旋转(即如果手机指向东方,地图将定向,以便地图的东侧位于顶部)。 我发现之前的答案建议在mapView中编写onDraw()方法,然而,api将方法更改为final,因此无法覆盖。 结果我试图像这样覆盖dispatchDraw()方法: 注意: -compass是一个布尔值,如果为true,则旋转视图 -bearing是一个浮点variables,具有视图应该旋转的度数 protected void dispatchDraw(Canvas canvas) { canvas.save(); if (compass) { final float w = this.getWidth(); final float h = this.getHeight(); final float scaleFactor = (float)(Math.sqrt(h * h + w * w) / Math.min(w, h)); final float centerX = w / 2.0f; final float centerY = h / 2.0f; canvas.rotate(bearing, centerX, […]

在Android MapView上绘制一个圆圈

解决这个问题是我的解决方案: 编辑:更新以反映robguinness答案。 import com.google.android.maps.GeoPoint; import com.google.android.maps.MapView; import com.google.android.maps.Overlay; import com.google.android.maps.Projection; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Point; public class CircleOverlay extends Overlay { Context context; double mLat; double mLon; float mRadius; public CircleOverlay(Context _context, double _lat, double _lon, float radius ) { context = _context; mLat = _lat; mLon = _lon; mRadius […]