【发布时间】:2010-10-11 19:10:58
【问题描述】:
在HelloMapView tutorial 中,地图似乎加载正常,我可以看到地图,还可以看到示例给出的墨西哥标记。
但是,当我点击墨西哥标记时,我的应用程序崩溃并显示消息
Android 应用程序崩溃
我认为我知道问题出在哪里,但我不知道如何解决它:
在第 7 步中,tutorial 表示:
现在设置处理叠加项目上的触摸事件的能力。首先,您将需要作为此类成员的应用程序上下文的引用。所以将 Context mContext 添加为类成员,然后用新的类构造函数对其进行初始化:
public HelloItemizedOverlay(Drawable defaultMarker, Context context) {
super(defaultMarker);
mContext = context;
}
好的,但是在主教程类中,当它声明这个类时,它没有给它上下文:
HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable);
我尝试这样做:new HelloItemizedOverlay(drawable, getApplicationContext());
但这不起作用,地图显示没有墨西哥标记。
有人知道我哪里出错了吗?
【问题讨论】:
-
在 Eclipse 中使用
adb logcat、DDMS 或 DDMS 透视图查看 LogCat 并检查与“android 应用程序崩溃”相关的堆栈跟踪。此外,不要将getApplicationContext()用于 GUI 操作 - 请改用this。
标签: android google-maps android-context