构建 react-native-maps 并尝试确定使用 animateToRegion 与 animateCamera 的优缺点。过去,我们在区域基础上处理所有事情。
似乎区域是更好的选择,因为您不必担心高度和缩放之间的差异,同时还可以根据需要更精细地控制要显示的确切区域。
有没有人有任何想法或经历使他们产生了一种或另一种?
最佳答案
我只是自己做了这个切换。我发现 animateCamera()
用途更广,语法更简洁。
animateCamera()
的最大优点是您可以通过单个方法调用执行多个动画。
以坐标为中心并使用 animateCamera()
将相机旋转 180 度的示例:
this.map.animateCamera({
center: {
latitude: 0,
longitude: 0,
},
heading: 180,
});
如果您想用 animateToRegion()
做同样的事情,您需要调用两个方法:
this.map.animateToRegion({
latitude: 0,
longitude: 0,
});
this.map.animateCamera({
heading: 180,
});
不太干净。
截至目前,animateCamera()
的缺点是您似乎无法传递 latitudeDelta
和 longitudeDelta
像区域一样进入 center
属性,指定 here .
简而言之,如果您不需要使用 latitudeDelta
和 longitudeDelta
,那么 animateCamera()
是最佳选择。如果非要我推测的话,我会说 animateToRegion()
会像其他方法一样在未来某个时候被弃用,取而代之的是 animateCamera()
。
关于android - 使用 animateToRegion() 与 animateCamera() 的优缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56469464/