みなさん、こんにちは。地図上の2点の間にポリラインを描画しようとしていますが、メソッドを実行すると、以下のエラーが発生します。エラーラインを次のように絞り込みました。
canvas.drawLine(p1.x, p1.y, p2.x, p2.y, mPaint);
これが私のクラスが描いているところです
package com.example.hellogooglemap;
class MyOverlay extends Overlay{
private Projection projection;
Paint mPaint;
Context mContext;
List<GeoPoint> gpList;
public MyOverlay(List<GeoPoint> geopointList, Context context) {
super();
mContext = context;
gpList = geopointList;
Paint mPaint = new Paint();
mPaint.setARGB(255, 10, 10, 255);
mPaint.setAntiAlias(true);
mPaint.setFakeBoldText(true);
//Toast.makeText(mContext, gpList.get(0).toString() , Toast.LENGTH_SHORT).show();
}
@Override
public void draw(Canvas canvas, MapView mapv, boolean shadow){
projection = mapv.getProjection();
Point p1 = new Point();
Point p2 = new Point();
projection.toPixels(gpList.get(0), p1);
projection.toPixels(gpList.get(1), p2);
canvas.drawLine(p1.x, p1.y, p2.x, p2.y, mPaint);
super.draw(canvas, mapv, shadow);
}
}
ここにエラーがあります
12-08 03:50:05.559: E/AndroidRuntime(1804): FATAL EXCEPTION: main
12-08 03:50:05.559: E/AndroidRuntime(1804): java.lang.NullPointerException
12-08 03:50:05.559: E/AndroidRuntime(1804): at android.graphics.Canvas.drawLine(Canvas.java:876)
12-08 03:50:05.559: E/AndroidRuntime(1804): at com.example.hellogooglemap.MyOverlay.draw(MyOverlay.java:56)
12-08 03:50:05.559: E/AndroidRuntime(1804): at com.google.android.maps.Overlay.draw(Overlay.java:179)
12-08 03:50:05.559: E/AndroidRuntime(1804): at com.google.android.maps.OverlayBundle.draw(OverlayBundle.java:42)
12-08 03:50:05.559: E/AndroidRuntime(1804): at com.google.android.maps.MapView.onDraw(MapView.java:532)
12-08 03:50:05.559: E/AndroidRuntime(1804): at android.view.View.draw(View.java:13707)
12-08 03:50:05.559: E/AndroidRuntime(1804): at android.view.View.draw(View.java:13591)
12-08 03:50:05.559: E/AndroidRuntime(1804): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
12-08 03:50:05.559: E/AndroidRuntime(1804): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
12-08 03:50:05.559: E/AndroidRuntime(1804): at android.view.View.draw(View.java:13589)
12-08 03:50:05.559: E/AndroidRuntime(1804): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
どんな助けでも大歓迎です。私はしばらくの間これに固執してきました。