在这里找到答案:Android Google Map InfoWindow anchor point after marker rotation
使用以下代码可以找到标记顶部中心点的位置:
var angle = 0.0;
var x = Math.sin(-angle * Math.PI / 180) * 0.5 + 0.5;
var y = -(Math.cos(-angle * Math.PI / 180) * 0.5 - 0.5);
并设置一些偏移量。在我的情况下是-0.1f:
marker.setInfoWindowAnchor((float)x, (float)y -0.1f); // -0.1f for moving up