mkMapView的regionDidChangeAnimated委托在tab加载时触发了两次

时间:2011-02-25 06:31:24

标签: iphone ios4 mkmapview

我有一个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];
}

1 个答案:

答案 0 :(得分:0)

我很确定这是因为自动调整大小。尝试在查看控制器中实现- (void)viewWillLayoutSubviews并记录调用它的频率。