【问题标题】:When does didUpdateLocation get called?didUpdateLocation 什么时候被调用?
【发布时间】:2016-10-28 22:06:50
【问题描述】:

假设您想将 MapView 集中在当前位置,然后您在 didUpdateLocation 中编写一些代码来处理当前位置坐标。

但是,如果您不对 CLLocationManager 对象调用 requestLocationstartUpdatingLocaion,则永远不会调用该方法。对吗?

但是,如果您查看 MapView 显示您的位置移动(例如,您模拟移动)的蓝点,您是否调用 requestLocationstartUpdatingLocation,但不会自动调用 didUpdateLocation。

我试图理解为什么当你不得不自己调用委托方法时他们制作了一个委托方法。

【问题讨论】:

    标签: swift location mapkit theory cllocation


    【解决方案1】:

    您必须调用一次 startUpdatingLocation 并且每次位置更改时都会调用 didUpdateLocation 委托方法。这和你说的很不一样。

    【讨论】:

    • 是的,也许我不够清楚。但是我想说的是,didUpdateLocations 总是需要一个开始才能被她调用。但尽管如此,在您的地图视图中,您可以看到蓝点正在移动(例如,如果您模拟移动)但 didUpdateLocations 不会被调用。我会更新我的问题。
    • 好吧,无论如何,蓝点在移动有点奇怪,但可以预期的行为是该点已更新,但未调用委托,因为您没有订阅它但是在我看来,委托实现行为符合预期。您必须调用 start 才能接收更新。
    • 好的,谢谢您的回答。我只是想知道我的想法是否完全错误,但似乎有点出乎意料。
    猜你喜欢
    • 2011-07-26
    • 2010-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多