При инициализации нового класса, какие методы этого класса будут выполняться автоматически. Пожалуйста, посмотрите на коды ниже:
CoreLocationDemoViewController.m
- (void)viewDidLoad {
NSLog(@"CORE_LOCATION_DEMO_VIEW_CONTROLLER=======>VIEW_DID_LOAD");
[super viewDidLoad];
CLController = [[CoreLocationController alloc] init]; // line 1
CLController.delegate = self; // line 2
[CLController.locMgr startUpdatingLocation];
}
CoreLocationController.m
- (id)init {
NSLog(@"CORE_LOCATION_CONTROLLER=======>INIT");
}
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
NSLog(@"CORE_LOCATION_CONTROLLER=======>DID_UPDATE_TO_LOCATION");
}
От отладки получил
2011-10-11 23:44:31.682 CoreLocationDemo[77470:207] CORE_LOCATION_CONTROLLER=======>INIT
2011-10-11 23:44:31.707 CoreLocationDemo[77470:207] CORE_LOCATION_CONTROLLER=======>DID_UPDATE_TO_LOCATION
Кажется, что init и locationManager выполняются автоматически ... Я не уверен в этом ...
Другой вопрос в строке 2, что
CLController.delegate = self ( delegate is declared as id delegate in CoreLocationController.h )
делает
Пожалуйста, помогите, если вы испытывали раньше, и все комментарии приветствуются здесь