1

私はAndroidでのGoogleマップビューの使用についてこのチュートリアルに従おうとしています。2番目の部分では、mContextメンバー変数を作成してからに渡しAlertDialog.Builder(mContext)ますが、インスタンスを作成するために呼び出すコンストラクターHelloItemizedOverlayはインスタンス化されないため、私が知る限り、mContextそれはそのままです。null

プログラムが正しく動作せず、NullPointerException私が思ったようにをスローします。これはどのように機能するはずですか?

ありがとう、
ジェンゲラー

4

3 に答える 3

1

チュートリアルのステップ2(onCreateセクション)では、HelloItemizedOverlayをインスタンス化します。

HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable);

ただし、HelloItemizedOverlayコンストラクターでは、DrawableとContextが必要であることに注意してください。

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

したがって、障害はチュートリアルにあります。Contextオブジェクトなしでクラスをインスタンス化しており、nullになっています。onCreate()メソッドでthis、コンストラクターに追加するだけです。

于 2010-10-31T18:15:22.463 に答える
0

public HelloItemizedOverlay(Drawable defaultMarker、Context context){super(boundCenterBottom(defaultMarker)); mContext=コンテキスト; }

于 2010-11-23T23:05:08.113 に答える
0

HelloItemizedOverlay2つのパラメーターを受け入れるための単一のコンストラクターを作成します:drawablethis

チュートリアルでは、パラメーターの数が異なる2つのコンストラクターを作成する必要があるようです。

于 2011-03-21T19:06:16.007 に答える