Google Map Lite 模式 moveCamera 到 lat lng 边界添加了不需要的地图填充

2023-11-30

我希望地图相机移动到我的 LatLngBounds。所以我将地图片段添加到布局中BaseExpandableListAdapter's getChildView and onMapReady I'll moveCamera to LatLngBounds

@Override
public View getChildView(final int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent) {

    convertView = inflater.inflate(R.layout.event_child, parent, false);

    GoogleMapOptions options = new GoogleMapOptions();
    options.liteMode(true)
           .compassEnabled(false)
           .mapToolbarEnabled(false)
           .rotateGesturesEnabled(false)
           .tiltGesturesEnabled(false)
           .scrollGesturesEnabled(false)
           .zoomControlsEnabled(false)
           .zoomGesturesEnabled(false);

    SupportMapFragment mapFragment = SupportMapFragment.newInstance(options);
    FragmentTransaction transaction = fragmentManager.beginTransaction();
    transaction.add(R.id.event_fragment_map, mapFragment, "event_fragment_map").commit();

    mapFragment.getMapAsync(new OnMapReadyCallback() {
        @Override
        public void onMapReady(GoogleMap googleMap) {
            mGoogleMap = googleMap;
            moveMapAddBounds();
        }
    });

//...
}

private void moveMapAddBounds(){
    mGoogleMap.addPolygon(new PolygonOptions().add(getLatLngBounds().southwest)
                                              .add(new LatLng(getLatLngBounds().northeast.latitude, getLatLngBounds().southwest.longitude))
                                              .add(getLatLngBounds().northeast)
                                              .add(new LatLng(getLatLngBounds().southwest.latitude, getLatLngBounds().northeast.longitude))
                         );
    mGoogleMap.moveCamera(CameraUpdateFactory.newLatLngBounds(getLatLngBounds(), 0));
}

public LatLngBounds getLatLngBounds() {
    //random fake latlng and distance
    LatLng from = new LatLng(51.1113564, 17.0041787);
    double distance = 1717.906494140625;
    return new LatLngBounds.Builder().
            include(SphericalUtil.computeOffset(from, distance, 0)).
            include(SphericalUtil.computeOffset(from, distance, 90)).
            include(SphericalUtil.computeOffset(from, distance, 180)).
            include(SphericalUtil.computeOffset(from, distance, 270)).build();
}

我正在根据计算界限http://googlemaps.github.io/android-maps-utils/它似乎工作正常,因为矩形添加到了地图中moveMapAddBounds添加到有效位置,但地图相机移动到几乎良好的位置,除了它向地图添加随机(?)填充(矩形上方和下方对称),如图所示:

enter image description here

我观察到,对于特定的 LatLngBounds,这些填充始终是相同的,但它们在不同的 LatLngBounds 之间有所不同。


原因是我使用了精简模式,其中仅提供整数缩放。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Google Map Lite 模式 moveCamera 到 lat lng 边界添加了不需要的地图填充 的相关文章

  • 如何将 Google Maps API 搜索框结果限制为某个国家/地区?

    我不想使用自动完成功能 我想使用搜索框将搜索限制到某个国家 地区 https developers google com maps documentation javascript examples places searchbox htt
  • 无法在云控制台中启用 Maps SDK for Android

    我在云控制台中启用适用于 Android 的 Maps SDK 时遇到此问题 https console cloud google com https console cloud google com 它会抛出以下错误 附截图 我收到错误消
  • 使用 C# 中的 Google 地图 API 和 SSIS 包获取行驶距离

    更新 找到了谷歌距离矩阵并尝试相应地修改我的代码 我在这里收到无效参数错误 return new GeoLocation dstnc uri ToString catch return new GeoLocation 0 0 https 基
  • 控制 OverlayItem 大小

    我正在构建一个在单个 ItemizedOverlay 中包含几十个 OverlayItems 的地图 我的地图设计为可以非常近距离地查看 大约缩放级别 18 并且 OverlayItems 彼此非常接近 地图放大时看起来不错 但是 如果用户
  • Google 地图地理编码 API 为有效地址生成 ZERO_RESULTS

    我们使用 google API 进行地理编码 我们成功对大约 10K 个地址进行了地理编码 由于某种原因 API 对以下地址返回 地理编码错误 状态 ZERO RESULTS 我们尝试了几次 但仅对于这些地址 我们仍然收到相同的 ZERO
  • 如何设置自定义谷歌地图标记的背景图像?

    我有一个用于 Google 标记的自定义图像 但我必须在其背景上设置另一个图像 是否可以设置地图标记的背景图像 是的你可以 试试这个所以问题如何使用 Android 地图 API v2 创建自定义形状的位图标记 https stackove
  • 地理位置邻近搜索

    应用程序中有一个要求 要求在谷歌地图中找出与特定国家和 或城市绑定的所有对象 我们使用谷歌地图 API 预先计算了具有各自纬度和经度的对象并将其存储在数据库中 有时 这些对象在它们可以提供服务的特定服务范围 半径内提供服务 例如现在的情况就
  • 谷歌地图标记被削减了一半 互联网浏览器

    我在 Internet Explorer 中的谷歌地图标记图标遇到了一个奇怪的问题 我的所有标记都显示为一半 两倍且偏移超过 50 这是使用谷歌的演示代码 所以我在其他地方用样式或 jquery 做的事情一定很奇怪 但我不知道是什么 以前有
  • 在 iOS 中对 Google 地图标记进行聚类

    我有一个基于地图的应用程序 使用 Google 地图的 iOS SDK 我需要在核心数据数据库中存储多达数千个项目 并在地图上用标记显示它们 出于性能和可用性的原因 我需要在用户缩小时对这些标记进行聚类 但我需要确保放置代表性标记 以便用户
  • “google.maps.event.addDomListener(窗口,'加载',初始化);”是什么意思意思是? [复制]

    这个问题在这里已经有答案了 这是什么意思 google maps event addDomListener window load initialize 我有函数 initialize 但我还添加了两个参数 经度和纬度 所以它是这样的 fu
  • 谷歌地图行车方向源代码为他们的例子?

    谷歌举了一个例子http googlemapsapi blogspot com 2007 05 drive directions support added to html http googlemapsapi blogspot com 2
  • 如何在我的谷歌上嵌入转弯导航

    我想在我的 Android 应用程序中嵌入逐段导航 请给我一个教程或如何执行此操作的想法 提前致谢 如果您不固定使用谷歌地图 您可以使用基于 OpenStreetMap 地图的维基百科版本 的 SDK 有几个不错的 SDK 提供商 skob
  • 从 Chrome 应用程序使用 Google 地图 API

    我正在尝试在 Chrome 应用程序中使用 Google 地图 每当我尝试加载 JavaScript 时 都会收到错误 Refused to load the script https maps googleapis com maps ap
  • 如何在React Native的MapView中设置标记

    我想在React Native中的MapView上设置一个标记 但是通过官方文档找不到任何信息MapView https facebook github io react native docs mapview html content 如
  • 如何针对 IE 进行优化?

    我有一个 JS 密集型应用程序 它在 IE 中运行缓慢 我将花费大约一周的时间来优化 IE 并且我想要一些关于尝试的方向 我发现这个线程引用Drip https ieleak svn sourceforge net svnroot iele
  • 免费用于商业用途的google-maps相当于执行以下操作吗?

    我正在寻找一个地图 API 它具有与 Google 地图类似的功能 但可能具有 Apache MIT 许可证的某些内容 我基本上想在地图上绘制点 这样的事情存在吗 如果有的话 有没有关于在这个地图 API 上绘制点的指南 打开街道地图 ht
  • 是否可以将 BitmapDescriptor 转换为 Bitmap?

    我需要将 BitmapDescriptor 转换为 Bitmap 我可以使用以下代码将位图转换为 BitmapDescriptor BitmapDescriptor bd BitmapDescriptorFactory fromBitmap
  • 可以在谷歌静态地图上画一个圆圈吗?

    静态地图 API 讨论了路径 但没有提及圆圈 这可能吗 谢谢 您可以通过绘制详细的轮廓来表示圆PolyLine因为谷歌静态地图本身不支持绘制圆 您需要一种算法来生成正确的编码折线 我用过这个执行 http www svennerberg c
  • 使用javascript在谷歌地图中绘制多边形

    我想在谷歌地图中绘制多边形 我正在使用示例代码http jsfiddle net rvsMH 1 http jsfiddle net rvsMH 1 但它不起作用并且没有获取数组或纬度 经度值 我不知道出了什么问题
  • 如何解决 google 地图中的 addDomListener() 弃用问题

    当我打电话时addDomListener or addDomListenerOnce const domNode document getElementById google maps event addDomListener domNod

随机推荐