【发布时间】:2011-08-11 06:45:27
【问题描述】:
我有一个 MapActivity,并且使用 ItemizedOverlay 显示地图图钉。我想将 onTap 事件转移到 MapActivity。 (onTap 函数存在于 ItemizedOverlay 类中)。如何做到这一点?
【问题讨论】:
标签: android android-maps mapactivity
我有一个 MapActivity,并且使用 ItemizedOverlay 显示地图图钉。我想将 onTap 事件转移到 MapActivity。 (onTap 函数存在于 ItemizedOverlay 类中)。如何做到这一点?
【问题讨论】:
标签: android android-maps mapactivity
class CurOverlay extends Overlay
{
private GeoPoint pointToDraw;
String addstr,addcity;
@Override
public boolean onTap(GeoPoint p, MapView mapView) {
// TODO Auto-generated method stub
final double taplat,taplon;
taplat=p.getLatitudeE6()/1E6;
taplon=p.getLongitudeE6()/1E6;
Geocoder geo = new Geocoder(getApplicationContext(), Locale.getDefault());
List<Address> add;
try
{
add = geo.getFromLocation(taplat,taplon,1);
Log.i("ADD OBJ SIZE IS----",""+add.size());
if (add.size() > 0)
{
addstr = add.get(0).getAddressLine(0)+" "+add.get(0).getAddressLine(1);
}
}
catch (IOException e)
{
e.printStackTrace();
}
return super.onTap(p, mapView);
}
public void setPointToDraw(GeoPoint point) {
pointToDraw = point;
}
public GeoPoint getPointToDraw() {
return pointToDraw;
}
}
只需将此代码添加到您的 tapactivity 并从其他活动中调用它(通过 ActivityforResult)并获得简单的位置......
【讨论】: