所以我有一个 customoverlay 扩展 itemizedoverlay 以便在地图上放置一个标记。我的问题是我想调整标记,以便可绘制的边界与 boundCenterBottm 和 boundCenter 值不同(在我的情况下,如果存在,我希望有类似 boundLeftBottom 的东西)。我如何实现这一目标?我想实现这一点的原因是因为我有一个指向左下角的drawable。
我已经在网上搜索过,非常感谢任何帮助。
建议在左侧制作均匀透明的空间将不被接受。我认为这是一个不恰当的解决方法
编辑;
我最终得到了这个:
public class CustomOverlay extends ItemizedOverlay<CustomOverlayItem> {
private ArrayList<CustomOverlayItem> mOverlays = new ArrayList<CustomOverlayItem>();
private Context mContext;
public CustomOverlay(Drawable defaultMarker, Context context) {
// super(boundCenterBottom(defaultMarker));
super(defaultMarker);
defaultMarker.setBounds(0, -defaultMarker.getIntrinsicHeight(), defaultMarker.getIntrinsicWidth(), 0); //TODO experiment
mContext = context;
}
这是正确的,尽管它没有解决我的问题,因为角落里的图形并不完美,并且有 3 个不同的可绘制对象很难修复(所以最终的解决方案是我要修复可绘制对象)。