我有一个TabView,我的一个标签包含一个mapView。当我使用mapView加载选项卡时出于某种原因,regionDidChangeAnimated被调用两次。我已经在其他所有功能中加入了断点并将它们全部禁用,因此它实际上只是拉出一张空白地图。尽管如此,regionDidChangeAnimated被调用两次。任何想法为什么会这样?
以下是代码:
SecondViewController.h:
#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
@interface SecondViewController : UIViewController<MKMapViewDelegate>
{IBOutlet MKMapView *mapView;}
@end
SecondViewController.m
#import "SecondViewController.h"
@implementation SecondViewController
- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
{
//[self showTowers];
NSLog(@"regionDidChangeAnimated");
}
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
return self;
}
- (void)dealloc {
[super dealloc];
}
答案 0 :(得分:0)
我很确定这是因为自动调整大小。尝试在查看控制器中实现- (void)viewWillLayoutSubviews
并记录调用它的频率。