gpt4 book ai didi

ios - 更改 Google map 大小 iOS Swift

转载 作者:可可西里 更新时间:2023-11-01 01:41:44 28 4
gpt4 key购买 nike

我在这方面找不到任何东西,所以我要问。当我使用谷歌在其网站上提供的代码时,我在 Controller 中得到了一张全屏 map 。我希望能够在容器中显示它(固定宽度和高度)。

我正在使用 swift,非常感谢您的帮助。下面是我从谷歌提取的代码:

Override func viewDidLoad() {
super.viewDidLoad()

var camera = GMSCameraPosition.cameraWithLatitude(-33.86,
longitude: 151.20, zoom: 2)
var mapView = GMSMapView.mapWithFrame(CGRectZero, camera: camera)
mapView.myLocationEnabled = true
self.view = mapView

var marker = GMSMarker()
marker.position = CLLocationCoordinate2DMake(-33.86, 151.20)
marker.title = "Sydney"
marker.snippet = "Australia"
marker.map = mapView

// Do any additional setup after loading the view.
}

最佳答案

您的 map 将与您使用的 View 一样大。您有 2 个选择。

  • 1
    创建特定大小的 subview 并将该 View 用于您的 GMSMapView,方法与您相同。
  • 2
    而不是将您的 GMSMapView 分配给某些 View 使用

    view.insertSubview(mapView, atIndex:0)

    请记住,在这种情况下,您必须为 GMSMapView 创建一个框架

    var mapView = GMSMapView.mapWithFrame(CGRectMake(...))

    这样做的好处是,您可以根据需要在 map 上方添加其他组件(一些按钮、标签等),这在第一种方法中是不可能的。

编辑

这是我使用自动布局的方式。我在 Storyboard 中创建了一些 View ,对其进行了约束,以便根据屏幕尺寸调整大小。然后我初始化我的 map View 并使用我的自动调整 View 的大小并将我的 mapView 插入到这个 View 中。

mapView_ = [[GMSMapView alloc] initWithFrame:self.viewForMap.bounds];
mapView_.delegate = self;
mapView_.camera = camera;
[self.viewForMap insertSubview:mapView_ atIndex:0];

是的,我知道这是 Objective-C,但这只是一个例子。

关于ios - 更改 Google map 大小 iOS Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29162063/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com