2

でインテントを開始しようとしました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 に答える