0

我正在尝试在 UrlTile 中使用 openstreetmap 磁贴,但我得到了重复的图层、openstreetmap 和默认的谷歌地图,我该如何删除谷歌地图图层?

在此处输入图像描述

这是我的组件:

import { StyleSheet, Text, View, Button } from "react-native";
import MapView, {
  PROVIDER_GOOGLE,
  MAP_TYPES,
  PROVIDER_DEFAULT,
  UrlTile,
  Marker,
} from "react-native-maps";
import React, { useEffect } from "react";

export default function Home({ navigation }) {
  let location = {
    latitude: 23.259933,
    longitude: 77.412613,
    latitudeDelta: 0.009,
    longitudeDelta: 0.009,
  };

  return (
    <View style={styles.container}>
      <View style={styles.myMap}>
        <MapView
          region={location}
          rotateEnabled={false}
          style={{ flex: 1 }}
          style={styles.map}
          showsUserLocation
        >
          <UrlTile
            urlTemplate="https://a.tile.openstreetmap.de/tiles/osmde/{z}/{x}/{y}.png"
            maximumZ={19}
          />
          <Marker
            title="Home"
            coordinate={{
              latitude: location.latitude,
              longitude: location.longitude,
            }}
          />
        </MapView>
      </View>
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: "#ffd",
    alignItems: "center",
    justifyContent: "center",
  },
  btn1: {
    margin: 20,
  },
  btn2: {
    margin: 20,
  },
  btns: {
    flex: 1,
    flexDirection: "row",
    backgroundColor: "grey",
  },
  myMap: {
    flex: 2,
    backgroundColor: "white",
    width: "100%",
    marginTop: 30,
    marginBottom: 30,
  },
  map: {
    width: "100%",
    height: "100%",
  },
});

此外,当我用我自己的 MapTiler 服务器图块切换 openstreetmap 图块时,它不显示任何内容,只是谷歌地图

'http://localhost:3650/api/maps/satellite-hybrid/{z}/{x}/{y}.png'

最后一件事,我需要知道这是否会花费我,我需要使用 Google API 密钥来运行 react-native-maps 库,我需要一些解释。

先感谢您。

4

1 回答 1

0

您是否尝试过查阅 MapTiler 文档?There might be some tips to help you: https://docs.maptiler.com/maplibre-gl-native-android/?_ga=2.172534305.364226297.1644212649-2087445124.1628005081&_gl=1*1hky133*_ga*MjA4NzQ0NTEyNC4xNjI4MDA1MDgx*_ga_K4SXYBF4HT*MTY0NDI0NDA5My4yLjEuMTY0NDI0NTAxMC41Ng. .

请问谷歌地图是否必不可少?由于您使用 MapTiler Server,它也可以替换为 MapTiler 数据层。

如果您有兴趣了解更多信息,请随时通过 support@maptiler.com 与我们联系

于 2022-02-07T14:46:02.600 回答