2

我尝试在 中启动 Intent onInfoWindowClick,但它冻结了:

@Override
public void onInfoWindowClick(Marker marker) {
    TabGroupActivity parentActivity = (TabGroupActivity) getParent();
    Context context = parentActivity.getApplicationContext();
    Intent myIntent = new Intent(context, HouseDetailActivity.class);

    parentActivity.startChildActivity("DetailActivity", myIntent);
}

如果我尝试在

public boolean onMarkerClick(final Marker marker) 

它完美地工作。

4

1 回答 1

6

我遇到了同样的问题。我怀疑必须先关闭 InfoWindow,然后才能进行任何操作,因此同步更改视图(或活动活动)不起作用。

我不确定这是否是最好的解决方案,但我通过使用 postDelayed() 解决了这个问题,如下所示:

@Override
public void onInfoWindowClick(Marker marker) {
    marker.hideInfoWindow();
    // Set some variable here so you know which one was clicked
    gMarker = marker;
    myHandler.postDelayed(updateMyMap, 50);
    }
}

private Runnable updateMyMap = new Runnable() {

    @Override
    public void run() {
        // Take some action on the selection here
        setContentView(someView);
    }

};
于 2012-12-22T18:52:21.113 回答