我尝试启动一个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)
它完美地运作.
我遇到了同样的问题.我怀疑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)
| 归档时间: |
|
| 查看次数: |
925 次 |
| 最近记录: |