我一直在關注本教程:http://developer.android.com/resources/tutorials/views/hello-mapview.html 但在onTap
mContext拋出一個NullPointerException ..任何人都知道爲什麼?這裏是我的代碼..上下文空指針
public class Mapitems extends ItemizedOverlay{
Context mContext;
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
public Mapitems(Drawable defaultMarker) {
super(boundCenterBottom(defaultMarker));
}
public Mapitems(Drawable defaultMarker, Context context) {
super(defaultMarker);
mContext = context;
}
@Override
protected OverlayItem createItem(int i) {
return mOverlays.get(i);
}
public void addOverlay(OverlayItem overlay) {
mOverlays.add(overlay);
populate();
}
@Override
protected boolean onTap(int index) {
OverlayItem item = mOverlays.get(index);
AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
dialog.setTitle(item.getTitle());
dialog.setMessage(item.getSnippet());
dialog.show();
return true;
}
@Override
public int size() {
return mOverlays.size();
}
}
//編輯:我仍然有這個問題。賞金適用於任何能給我解釋爲什麼我會遇到這種錯誤的人,我將如何糾正?
//編輯2:它似乎過去的答案允許我點擊該項目,但沒有顯示其在地圖視圖中的圖標..任何人都知道爲什麼?
謝謝你,先生。 – Skizit 2010-08-26 00:27:42
不客氣。至於你的第二個問題,它可能是'HelloGoogleMaps'類中的東西,或者是你的版本中調用的任何東西。請確保您的項目的res/drawable /目錄中有一個圖像,並且您正確引用它。你可能會有這樣一行:this.getResources()。getDrawable(R.drawable。[imgFileName])'其中[imgFileName]是沒有擴展名的所需圖像的名稱(.png) – neXus 2010-08-26 12:06:35