2013-09-29 50 views
0

我正在使用MKMapView来跟踪用户的进度,我以为我会采用使用标注按钮开始跟踪的iOS 7 Apple Maps方法。但在我的情况下,用户停留在同一个视图上,所以我需要修改按钮以指示跟踪已在进行中。修改rightCalloutAccessoryView当注释被点击时

我创建了一个简单的动画,并在点击按钮时将其添加到按钮的图层中。工作正常。如果用户解散并返回标注,问题就出现了。尽管didSelectAnnotation中的代码将动画放回到图层上,但呈现的视图没有适当的动画。根据这个帖子:

UIButton Not Loading Properly For MKAnnotationView

这是因为didSelectAnnotation调用之前准备的注解视图。它必须事先做好准备,因为viewForAnnotation(我可以做到这一点的另一个地方)在重新显示标注时未被调用。

现在我想不出有什么办法可以使这项工作成为现实,但我希望有人在那里能得到答案。

编辑:

我尝试添加动画在viewForAnnotation按钮,然后暂停它,打算恢复它当按钮被窃听。但是,当点击按钮时,它不再有动画 - mapkit似乎已将其剥离。它在didSelectAnnotation中,但在两者之间的某处消失。

我可以将动画添加到整个MKAnnotationView中,但这并不像预期的那样动作 - 整个动画包括标注,看起来很奇怪。此外,在此视图上暂停动画会干扰显示标注。

我在这里试图做的是让按钮图像“脉冲”,以表明它已被轻敲,并且正在进行跟踪,同时让它看起来可以点击,因此用户知道他们可以再次点击它停止跟踪。

我有一种感觉,我是SOL在这里......请某人,证明我错了!

回答

相关问题