我正在添加和删除注释到地图视图.当我删除一个它突然消失,看起来有点惊人,我宁愿它优雅地消失.
我尝试用UIView:animateWithDuration删除它:但它不是一个可动画的属性.
如果没有其他简单的解决方案,我认为我可以获取注释视图以淡化其alpha,然后从地图中删除其注释.但问题是它看起来似乎没有注释视图对其地图视图的引用?添加一个开始变得有点凌乱.是否有一些简单快速的解决方案来优雅地删除注释?
使用animateWithDuration应该工作正常.要淡化删除注释,可以:
MKAnnotationView *view = [self.mapView viewForAnnotation:annotation];
if (view) {
[UIView animateWithDuration:0.5 delay:0.0 options:0 animations:^{
view.alpha = 0.0;
} completion:^(BOOL finished) {
[self.mapView removeAnnotation:annotation];
view.alpha = 1.0; // remember to set alpha back to 1.0 because annotation view can be reused later
}];
} else {
[self.mapView removeAnnotation:annotation];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1468 次 |
| 最近记录: |