2012-10-09 140 views
0

在線上發現的教程(例如http://bit.ly/SIXlI5)和Apple文檔中,沒有提及釋放MKMapItem或地標。他們是否需要被釋放,如果沒有,爲什麼不呢?地圖應用是否負責所有這些?我是否需要釋放MKMapItem或地標對象?

NSDictionary *address = @{ 
    (NSString *)kABPersonAddressStreetKey: _address.text, 
    (NSString *)kABPersonAddressCityKey: _city.text, 
    (NSString *)kABPersonAddressStateKey: _state.text, 
    (NSString *)kABPersonAddressZIPKey: _zip.text 
}; 

MKPlacemark *place = [[MKPlacemark alloc] 
     initWithCoordinate:_coords 
     addressDictionary:address]; 

MKMapItem *mapItem = [[MKMapItem alloc]initWithPlacemark:place]; 

NSDictionary *options = @{ 
    MKLaunchOptionsDirectionsModeKey:MKLaunchOptionsDirectionsModeDriving 
}; 

[mapItem openInMapsWithLaunchOptions:options]; 
+0

嗨你有這個項目的樣本.. – Rajneesh071

回答

1

如果你不使用ARC,並且你分配了一個對象,你有責任釋放它。這裏的所有都是它的。

在這種情況下,當您調用openInMaps ...時,地圖項信息將編碼到發送到地圖應用程序的URL中。但你不必擔心這一點。

您可以期待,除非它在頭文件或文檔中被調用,否則實例方法將同步執行它的工作而不會釋放接收器。

相關問題