我的折线失焦。我正在使用before_save :generate_slug
private
def genareate_slug
url = self.name.to_s.parameterize(title)
count = Slug.where("url LIKE '#{url}'").count
self.url = count.positive? ? "#{url}-#{count + 1}" : url
end
但这不是解决方案。如何解决这个问题
答案 0 :(得分:7)
要解决您的问题,请先了解Google地图相机的工作原理。当你这样做时:
map.moveCamera(CameraUpdateFactory.newLatLngZoom(route.startLocation, 10));
相机将起始位置对焦于中间,缩放级别为10。我们需要的是集中路线。为此,我们需要使用latLng边界。一旦我们创建了一个包含两个或更多latLng的边界,我们就可以将它设置为地图的相机。这样,您的路线就会对用户可见。
创建包含路线上所有开始和结束标记的边界:
LatLngBounds.Builder builder = new LatLngBounds.Builder();
builder.include(startMarker);
builder.include(endMarker);
LatLngBounds bounds = builder.build();
然后使用工厂获取移动描述对象:CameraUpdateFactory
:
int padding = 0; // padding around start and end marker
CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(bounds, padding);
googleMap.animateCamera(cu);