Note that there are some explanatory texts on larger screens.

plurals
  1. POandroid MapView DrawLine
    primarykey
    data
    text
    <p>I am trying to draw some overlay paths on my mapActivity. </p> <p>This is My ItemizedOverlay Class:</p> <pre><code>package com.state.park; import java.util.ArrayList; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Point; import android.graphics.drawable.Drawable; import com.google.android.maps.GeoPoint; import com.google.android.maps.ItemizedOverlay; import com.google.android.maps.MapView; import com.google.android.maps.Overlay; import com.google.android.maps.OverlayItem; import com.google.android.maps.Projection; public class Flytrap extends ItemizedOverlay&lt;OverlayItem&gt; { private GeoPoint gp1, gp2; private int color; private ArrayList&lt;OverlayItem&gt; mOverlays = new ArrayList&lt;OverlayItem&gt;(); public Flytrap(Drawable defaultMarker){ super(defaultMarker); } public Flytrap(GeoPoint gp1, GeoPoint gp2, int color, MapView mapView, Drawable defaultMarker) { super(boundCenterBottom(defaultMarker)); this.gp1 = gp1; this.gp2 = gp2; this.color = color; } @Override public void draw(Canvas canvas, MapView mapView, boolean shadow) { Projection projection = mapView.getProjection(); Paint paint = new Paint(); Point point = new Point(); projection.toPixels(gp1, point); paint.setColor(color); Point point2 = new Point(); projection.toPixels(gp2, point2); paint.setStrokeWidth(5); paint.setAlpha(120); canvas.drawLine(point.x, point.y, point2.x, point2.y, paint); super.draw(canvas, mapView, shadow); } public void addItem(OverlayItem item){ mOverlays.add(item); populate(); } @Override protected OverlayItem createItem(int i) { // TODO Auto-generated method stub return mOverlays.get(i); } @Override public int size() { // TODO Auto-generated method stub return 0; } } </code></pre> <p>And this is the MapActivity that I call it in.</p> <pre><code>ArrayList&lt;Double&gt; lon = new ArrayList&lt;Double&gt;(); ArrayList&lt;Double&gt; lat = new ArrayList&lt;Double&gt;(); ArrayList&lt;GeoPoint&gt; geopoints = new ArrayList&lt;GeoPoint&gt;(); List&lt;Overlay&gt; overlays; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.map); String flytrap = readRawTextFile(getBaseContext(), R.raw.flytrap); getlonlat(flytrap); mapView = (MapView) findViewById(R.id.mapview); mapView.setBuiltInZoomControls(true); mc = mapView.getController(); myLoc = new MyLocationOverlay(this, mapView); mapView.getOverlays().add(myLoc); locManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); locListener = new MyLocationListener(); locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locListener); Drawable d = getResources().getDrawable(R.drawable.icon); for (int i = 1; i &lt; geopoints.size(); i++) { mapView.getOverlays().add(new Flytrap(geopoints.get(i-1), geopoints.get(i), Color.BLUE, mapView, d )); } mapView.invalidate(); } protected boolean isLocationDisplayed() { return myLoc.isMyLocationEnabled(); } protected boolean isRouteDisplayed() { // TODO Auto-generated method stub return false; } </code></pre> <p>Any suggestions of how to display the lines on the map. As of right now it runs. but no overlay is displayed.</p> <p>Thank you.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload