2011-02-23 86 views
0

目前我正在通過一個採用MKAnnotation協議的地理定位教程進入一個類。MKAnnotation協議

教程提出以在Theannotation.h類

+ (id)annotationWithCoordinate:(CLLocationCoordinate2D)coord; 
- (id)initWithCoordinate:(CLLocationCoordinate2D)coord; 

並在實施

+ (id)annotationWithCoordinate:(CLLocationCoordinate2D)coord { 

return [[[[self class] alloc] initWithCoordinate:coord] autorelease]; 
    } 


- (id)initWithCoordinate:(CLLocationCoordinate2D)coord { 
    if (self = [super init]) { 
    self.coordinate = coord; 
} 
return self; 

}

第二種方法,然後調用在的ViewController下列方法

Theannotation *annotation = [[SimpleAnnotation alloc] initWithCoordinate:Coords]; 

我完全理解第二種方法,但是我對第一種方法感到困惑。該示例教程中的其他任何地方都沒有調用類方法,並且在這種情況下,我正在努力理解爲什麼要使用類方法。

回答

0

您可以省略此類方法,但在某些情況下,它很有用,因爲它提供了一種機制來創建將被自動釋放的「臨時」註釋。當然,你可以手動完成,但在這種情況下,類方法是一種方便的方法。

0

請通過這個博客here

,或者您也可以下載代碼 - link

,看到了代碼,你會知道哪些東西是必需的,哪些不會。