0
我正在做我的畢業論文,我必須做一個Android應用程序,它顯示我在谷歌地圖上的位置(我已經完成了),當我接近大學內的一些地方會彈出一些關於建築物的信息(我可能會用接近警報來做這件事)。重點是,我想導入他們將顯示在地圖上的地方作爲一個文本文件的pin。從文本文件導入座標在谷歌地圖上銷釘android gps
這是可能的(我已經做到了,但從代碼中靜態)?我正在使用Eclipse,如果它會很有用,我可以複製/粘貼代碼。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mapView = (MapView) findViewById(R.id.mapview);
mapView.setBuiltInZoomControls(true);
Drawable marker=getResources().getDrawable(R.drawable.pushpin);
marker.setBounds((int) (-marker.getIntrinsicWidth()/2),-marker.getIntrinsicHeight(),(int) (marker.getIntrinsicWidth()/2),0);
mapController=mapView.getController();
mapController.setZoom(15);
InterestingLocations funPlaces= new InterestingLocations(marker);
mapView.getOverlays().add(funPlaces);
GeoPoint pt=funPlaces.getCenterPt();
int latSpan=funPlaces.getLatSpanE6();
int lonSpan=funPlaces.getLonSpanE6();
Log.v("Overlays", "Lat span is " + latSpan);
Log.v("Overlays", "Lon span is " + lonSpan);
MapController mc = mapView.getController();
mc.setCenter(pt);
mc.zoomToSpan((int) (latSpan*1.5), (int)(lonSpan*1.5));
whereAmI= new MyLocationOverlay(this, mapView);
mapView.getOverlays().add(whereAmI);
mapView.postInvalidate();
public class InterestingLocations extends ItemizedOverlay{
private ArrayList<OverlayItem> locations = new ArrayList<OverlayItem>();
private GeoPoint center=null;
public InterestingLocations(Drawable marker){
super(marker);
GeoPoint disneyMagicKingdom = new GeoPoint((int)(37.97897823618044*1000000) ,(int)(23.6723855137825*1000000));
GeoPoint disneySevenLagon= new GeoPoint((int)(37.98013047446126*1000000) ,(int)(13.6715030670166*1000000));
locations.add(new OverlayItem(disneyMagicKingdom,"Magic Kingdom","Magic Kingdom"));
locations.add(new OverlayItem(disneySevenLagon,"Seven Lagon","Seven Lagon"));
populate();
}
鏈接不工作我會等待閱讀文章。以上是我的代碼看看,如果你想。 – Panos
當我發佈時,它正在工作。可能是網站服務器關閉。在某個時間後嘗試。 我認爲你的代碼看起來不錯。只需將地點詳情保存在「res」資產文件夾中的文本文件中即可。閱讀並解析每個位置,並放置一個逐項疊加,就像您現在正在做的那樣。 – SKK
如何清楚第一個座標在文本文件中的開始和結束位置? – Panos