그래서 내가 Google지도 API를 사용하여 응용 프로그램을 구축 봤는데 내가 벽에 실행했습니다 ..안드로이드 응용 프로그램 -지도 API - A로부터 가서는
지금까지 내가지도보기 (명백하게)하고있어 B합니다 원하는 경로의 최종 목적지를 표시하는 GeoPoint를 설정했습니다.
GPS 기능을 코드에 추가하는 과정에서 실제 위치를 청취하고 이동하면서 변경할 수 있습니다. 아직 구현되지 않았지만 어떻게하는지 압니다. 핀으로 사용할 이미지를 추가하여 최종 목적지를 정확히 찾아 냈습니다.
내가 모르는 것은 어떻게 경로와 두 점을 연결 하는가입니다. 누군가가 그 날 계몽 수 있다면, 내가 지금까지 가지고 무엇
좋은 것 :
package com.example.igestao;
import android.os.Bundle;
import android.annotation.SuppressLint;
import com.example.igestao.R;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import com.google.android.maps.MapController;
import com.google.android.maps.GeoPoint;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Point;
import com.google.android.maps.Overlay;
import java.util.List;
@SuppressLint("SetJavaScriptEnabled")
public class Mapa extends MapActivity {
MapView map;
MapController mc;
GeoPoint p;
class MapOverlay extends com.google.android.maps.Overlay {
@Override
public boolean draw(Canvas canvas, MapView map, boolean shadow, long when) {
super.draw(canvas, map, shadow);
//translate the GeoPoint to screen pixels
Point screenPts = new Point();
map.getProjection().toPixels(p, screenPts);
//add pin
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.gpin);
canvas.drawBitmap(bmp, screenPts.x, screenPts.y-50, null);
return true;
}
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
map = (MapView)findViewById(R.id.mvMapa);
map.setBuiltInZoomControls(true);
//map.setSatellite(true);
mc = map.getController();
String coordinates[] = {"38.75795","-9.15324"};
double lat = Double.parseDouble(coordinates[0]);
double lon = Double.parseDouble(coordinates[1]);
p = new GeoPoint( (int)(lat * 1E6), (int)(lon * 1E6));
mc.animateTo(p);
mc.setZoom(17);
map.invalidate();
//add location marker
MapOverlay mapOverlay = new MapOverlay();
List<Overlay> listOfOverlays = map.getOverlays();
listOfOverlays.clear();
listOfOverlays.add(mapOverlay);
map.invalidate();
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}