首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何防止MapKit在打开时进行初始缩放?

如何防止MapKit在打开时进行初始缩放?
EN

Stack Overflow用户
提问于 2020-07-10 22:50:06
回答 1查看 39关注 0票数 0

我有一个地图视图的一些位置,我是从前面的segue的准备功能。我在视图中加载了一个for in循环,这样我就可以进行注释并显示它们。这一切都很好,但当我单击上一个视图控制器中的show Map按钮时,它会将我带到我的地图视图,并且mapView会自动放大到第一个注释上。这可能是一个问题,因为我想让用户看到所有的位置。

我的问题是,我如何阻止地图中的这种初始缩放发生?

下面是我的viewDidLoad代码。

顺便说一下,IBOutlet是核心数据中的实体,mapView是连接到storyboard中地图工具包的bins变量。

代码语言:javascript
运行
复制
    override func viewDidLoad() {
        super.viewDidLoad()

        mapView.delegate = self
        for bin in bins {
        let geoCoder = CLGeocoder()
        geoCoder.geocodeAddressString(bin.address ?? "", completionHandler: { placemarks, error in
            if let error = error {
                print(error)
                return
            }

    
            if let placemarks = placemarks {
                // Get the first placemark
                let placemark = placemarks[0]

                let annotation = MKPointAnnotation()
                annotation.title = bin.type

                if let location = placemark.location {
                    annotation.coordinate = location.coordinate
                    // Display the annotation
                    self.mapView.showAnnotations([annotation], animated: true)
                    self.mapView.selectAnnotation(annotation, animated: true)
                
                }
            }
            
        }
    )}
}`
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-10 23:25:22

这一行:self.mapView.showAnnotations([annotation], animated: true)缩放地图以显示单个注释,而不是所有注释。您需要创建一个包含所有批注的数组,并在创建所有批注后进行显示。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62836854

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档