我按照android.com上的确切教程进行了mapview,当我创建一个只有一个drawable的HelloItemizedOverlay时,它会出现,但我无法触摸它,因为onTap()方法需要一个上下文。所以我使用上下文(getApplicationContext())创建它并没有出现,但如果我点击它需要的地方它仍然崩溃。 有人能帮助我吗?
http://developer.android.com/resources/tutorials/views/hello-mapview.html
答案 0 :(得分:1)
你得到了叠加层的上下文,但需要mapview活动的上下文,它以这种方式对我有用
public Context mycontext;
public ItemizedOverlay(Drawable defaultMarker,Context ctx) {
super(boundCenterBottom(defaultMarker));
mycontext = ctx;
// TODO Auto-generated constructor stub
}
答案 1 :(得分:1)
如果您尝试在教程中显示AlarmDialog
,那么您从getApplicationContext()
获取的上下文不是您需要的上下文。您需要Context
的{{1}}。
传递Activity
或this
(这是相同的事情)。
答案 2 :(得分:0)
两天前我遇到了同样的问题,所以在HelloGoogleMaps中你写了
HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable, this);
并在itemizedoverlay
Context mContext;
public HelloItemizedOverlay(Drawable defaultMarker, Context context) {
super(defaultMarker);
mContext = context;
}
我认为它会起作用......