gpt4 book ai didi

ios - 如何在 iOS 中加载 View 时在 Zoom 上显示用户当前位置?

转载 作者:行者123 更新时间:2023-11-28 21:51:31 25 4
gpt4 key购买 nike

我是 iOS 开发的新手,我制作了一个 Goggle map 支持的应用程序,它显示用户当前位置,但是当我按下 GMSMapView 上的 CurrentLocation 按钮时,我向用户显示当前位置,但我想向用户显示当前位置 WithOut Button Press 我的意思是当 viewDidLoad 我用 Zoom 显示直接当前位置请帮助我。

在这里我写了一个代码,就像在我的.h 文件 中一样。

#import <UIKit/UIKit.h>
#import <GoogleMaps/GoogleMaps.h>

@interface MapViewController : UIViewController<GMSMapViewDelegate>
@property (nonatomic,retain) IBOutlet GMSMapView *mapView;
@end

.m 文件的代码如下

- (void)viewDidLoad
{
[super viewDidLoad];
self.mapView.myLocationEnabled = YES;
self.mapView.mapType = kGMSTypeNormal;
self.mapView.settings.compassButton = YES;
self.mapView.settings.myLocationButton = YES;
self.mapView.delegate = self;
}

请帮助我显示当前位置而不按下当前位置按钮。请帮助我如何在 Google map 中获取当前位置地址。

谢谢。

最佳答案

尝试:

[self.mapView animateToLocation: self.mapView.myLocation.coordinate];

请记住,如果位置尚未确定,myLocation 可能为 nil!您可以使用键值观察 (KVO) 来确定何时对当前位置进行动画处理。

-(void) viewDidLoad {
[super viewDidLoad];
[self.mapView addObserver:self forKeyPath:@"myLocation" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:nil];
}

-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{

if ([keyPath isEqualToString:@"myLocation"]) {
// Animate map to current location (This will run every time user location updates!
[self.mapView animateToLocation: self.mapView.myLocation.coordinate];
// You can remove self from observing 'myLocation' to only animate once
[self.mapView removeObserver:self forKeyPath:@"myLocation"];
}
}

关于ios - 如何在 iOS 中加载 View 时在 Zoom 上显示用户当前位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28146436/

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