gpt4 book ai didi

ios - 选项卡栏和 Mapview 问题

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

我真的很困惑这个问题。我最近在我的应用程序中遇到了 mapview 选项卡的问题。甚至到了重新开始的地步。我只是想知道我是唯一遇到此问题的人还是我在这里做错了什么。

我对 iOS 相当陌生,但我知道如何定义 map View 的中心和跨度以便以用户的位置为中心。

我在自己的 View 中构建了它,它似乎可以工作,但是当我将它放入选项卡 Controller 时...我遇到了问题。 map 在显示用户位置的同时保持缩小。它应该放大显示用户的位置。

我的 map View Controller :

- (void)viewDidLoad
{
[super viewDidLoad];
[self.mapView.delegate self];
[self.mapView setShowsUserLocation:YES];
// Do any additional setup after loading the view from its nib.
}

-(void)mapView:(MKMapView *)mapView
didUpdateUserLocation:(MKUserLocation *)userLocation
{
CLLocationCoordinate2D loc = [userLocation coordinate];
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(loc, 500, 500);
[self.mapView setRegion:region animated:YES];
}

我还认为这可能与我在委托(delegate)中创建选项卡 Controller 的方式有关。

我的应用委托(delegate):

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
UIViewController *viewController1 = [[NWSWelcomeViewController alloc] initWithNibName:@"NWSWelcomeViewController" bundle:nil];
UIViewController *viewController2 = [[NWSMapViewViewController alloc] initWithNibName:@"NWSMapViewViewController" bundle:nil];
// UIViewController *viewController3 = [[NWSSettingsViewController alloc] initWithNibName:@"NWSSettingsViewController" bundle:nil];
self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = @[viewController1, viewController2, /* viewController3 */];
self.window.rootViewController = self.tabBarController;
[self.window makeKeyAndVisible];
return YES;
}

我正在为 iOS 5.1 编写代码,并且使用的是最新的 Xcode。

是的,我在 mapView 上启用了缩放设置。

我只想获取用户位置以将 map View 放大到用户位置。

最佳答案

viewDidLoad 中的这一行:

[self.mapView.delegate self];

什么也不做(它正在尝试将消息 self 发送到 self.mapView.delegate)。

它实际上并没有设置 map View 的 delegate,因此永远不会调用 didUpdateUserLocation

你的意思可能是:

[self.mapView setDelegate:self];

或者这个:

self.mapView.delegate = self;

关于ios - 选项卡栏和 Mapview 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12145975/

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