Android 如何在google map api v2上旋转标记图标?
我有一些我的标记针图形,但我必须旋转它们。 我在谷歌上搜索了很多,但就是找不到解决办法 有人知道我怎么能做到吗 BitmapDescriptor没有类似的函数,也没有MarkeOption或Marker本身 请给我一些建议。在一个新的地图api(api v2的第7版)中,添加了一个名为Android 如何在google map api v2上旋转标记图标?,android,android-maps-v2,Android,Android Maps V2,我有一些我的标记针图形,但我必须旋转它们。 我在谷歌上搜索了很多,但就是找不到解决办法 有人知道我怎么能做到吗 BitmapDescriptor没有类似的函数,也没有MarkeOption或Marker本身 请给我一些建议。在一个新的地图api(api v2的第7版)中,添加了一个名为setIcon(BitmapDescriptor图标)的新方法。更新后您可以尝试它-它必须工作正常。 但是如果您不想更新,那么唯一的方法就是在运行时(动态地)更改标记图标,但正如这里所说:一旦创建了标记,就不能更改
setIcon(BitmapDescriptor图标)
的新方法。更新后您可以尝试它-它必须工作正常。
但是如果您不想更新,那么唯一的方法就是在运行时(动态地)更改标记图标,但正如这里所说:
一旦创建了标记,就不能更改图标。因此,唯一的方法是动态地重新创建标记。这是一个糟糕的解决方案,因为重新创建标记需要大量内存分配,因此会导致垃圾收集和性能缺陷。为了避免这种情况,请创建所有标记位图,并立即将它们添加到贴图中。之后,您可以使用Marker.setVisible(boolean)
函数来显示当前需要的标记。您是否尝试过Marker.rotation(float value)
查看一下不确定这是否是最好的方法,但由于您的pin是可绘制的,因此您可以在画布上旋转绘制。之后,您将得到旋转针的位图,并将其设置为标记的图标(您应该保留对标记的引用)。请从这里检查接受的答案,您的意思是,如果我想有机会使用360度的标记,例如,我需要360个单独的可绘制的S或可以将可绘制转换为位图、旋转,然后再转换回可绘制?@AdamVarhegyi如果要绕过标准API限制,则只能使用脏方法:)。请参阅我对setIcon
方法的编辑。它更好,但需要更新API。我认为这只适用于在XY平面上进行的旋转。我说得对吗?如果是,那么我们如何实现绕x轴和/或y轴的旋转?有什么想法吗?我最近发了一篇帖子。如果你能告诉我你的想法,我会很高兴的。谢谢(我正在使用谷歌地图v2 API集)