从谷歌地图 v1 的数据库中绘制经纬度

Posted

技术标签:

【中文标题】从谷歌地图 v1 的数据库中绘制经纬度【英文标题】:Plot latitudes and longitudes from database on Google maps v1 【发布时间】:2013-03-18 15:18:58 【问题描述】:

我正在开发一个应用程序,我想在地图上从我的数据库中绘制纬度和经度。在我的数据库架构中,我有三列:

Name | Latitude | Longitude

我可以在ArrayList 中从 SQLite 检索数据,但我面临的问题是我应该如何在 Google 地图上可视化这些值以及存储在数据库中的位置名称?另外,如何绘制从起始地理点到结束地理点的路径。

【问题讨论】:

你试过什么?什么错误?你研究了什么?你有代码要显示吗?您有要展示的样本数据吗?除非您表明您已做出努力,否则该问题可能会结束。 实际上我能够通过大量的锤击和欺骗得到我的答案我想在这里发布代码以便其他人也能受益 【参考方案1】:

我通过创建逐项覆盖类让我的代码正常工作

package com.rahul.besttracker;

import java.util.ArrayList;

import android.app.AlertDialog;
import android.content.Context;
import android.graphics.drawable.Drawable;

import com.google.android.maps.ItemizedOverlay;
import com.google.android.maps.OverlayItem;

public class HelloItemizedOverlay extends ItemizedOverlay 
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
Context mContext;

public HelloItemizedOverlay(Drawable defaultMarker) 
    super(boundCenterBottom(defaultMarker));
    // TODO Auto-generated constructor stub


public HelloItemizedOverlay(Drawable defaultMarker, Context context) 
    super(boundCenterBottom(defaultMarker));
    mContext = context;


@Override
protected OverlayItem createItem(int i) 
    return mOverlays.get(i);


@Override
public int size() 
    return mOverlays.size();


public void addOverlay(OverlayItem overlay) 

    mOverlays.add(overlay);
    populate();


@Override
protected boolean onTap(int index) 
    OverlayItem item = mOverlays.get(index);
    AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
    dialog.setTitle(item.getTitle());
    dialog.setMessage(item.getSnippet());
    dialog.show();
    return true;

我在我的主类中创建了一个这样的实例,每次我需要添加一个项目到叠加时,我都调用了添加叠加函数。最后我在地图上绘制了叠加层

【讨论】:

以上是关于从谷歌地图 v1 的数据库中绘制经纬度的主要内容,如果未能解决你的问题,请参考以下文章

如何在颤振中从谷歌地图获取位置的经纬度坐标?

使用标记从谷歌地图获取纬度/经度坐标

从谷歌地图获取纬度和经度

从谷歌静态地图中的像素坐标获取经度/纬度

如何从谷歌地图中的经纬度获取地址位置。? [关闭]

如何从谷歌地图自动完成中提取纬度和经度