我想知道,声明一个MKPlacemark *mPlacemark有什么意义;如果我们没有在代码中“真正”使用它?
在.h文件中:
-(void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFindPlacemark:(MKPlacemark *)placemark{
NSLog(@"Reverse Geocoder completed");
mPlacemark=placemark;
[mapView addAnnotation:placemark];
} 在.h文件中:
MKPlacemark *mPlacemark;
因此,我们在视图中添加了placemark,但是似乎没有使用的"mPlacemark“又如何呢?
谢谢
发布于 2011-07-07 13:14:17
如果您使用placemark的唯一位置是在该委托方法中,那么您不需要在.h中声明一个,也不需要在委托方法中设置它。
可能需要它的一个原因是,如果代码中的其他地方(委托方法之外),您需要知道“最后发现的placemark”是什么。但是,如果确实需要保存该引用,则将其声明为retain属性并使用self.mPlacemark = placemark;设置它可能更安全。
https://stackoverflow.com/questions/6610170
复制相似问题