gpt4 book ai didi

iphone - iOS - 在应用程序启动时缩放到当前用户位置

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:55:04 24 4
gpt4 key购买 nike

我想在启动时将 map 缩放到当前用户位置。我尝试在 viewDidLoad 中使用 mapView.userLocation.coordinate 检索用户位置,但返回的坐标是 (0,0),可能是因为 MapKit 在启动时没有“找到”用户位置。

我找到了实现方法 didUpdateToLocation 的解决方案。我做了以下事情:

- (void) locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
{
if ( hasZoomedAtStartUp == NO )
{
[self zoomAtStartUp]; // my method to zoom the map
hasZoomedAtStartUp = YES;
}
}

我在 .h 文件上创建的 hasZoomedAtStartUp 变量并在 ViewDidLoad 中用 NO 初始化它。

这个解决方案工作正常,但我想知道是否有另一种方法可以做到这一点,而不需要 if 语句。该 IF 仅与启动相关,因此出于性能原因,我想将其删除。

最佳答案

我非常怀疑失败的 if 语句是否是您需要担心的性能问题。

您是否经常需要定位服务?如果不是,当您不再需要更新位置时调用 stopUpdatingLocation 可能会获得更大的 yield 。随后,您甚至不会到达 didUpdateToLocation,因为您不再获取新的位置数据。

关于iphone - iOS - 在应用程序启动时缩放到当前用户位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9448897/

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