android map v2 gms在onInfoWindowClick中启动Intent

Tre*_*ing 2 maps android

我尝试启动一个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);
}
Run Code Online (Sandbox Code Playgroud)

如果我尝试运行相同的代码

public boolean onMarkerClick(final Marker marker) 
Run Code Online (Sandbox Code Playgroud)

它完美地运作.

Tim*_*ley 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);
    }

};
Run Code Online (Sandbox Code Playgroud)