1

MKAnnotationView がタップされたときに表示されるカスタム コールアウト UIView を最終的にまとめることができました。オーバーライドしてこれを行いました

- (void)setSelected:(BOOL)selected animated:(BOOL)animated;

私のカスタム MKAnnotationView サブクラスで。注: canShowCallout プロパティを NO に設定して、メインの吹き出しが表示されないようにしました。

標準のコールアウトが使用するアニメーションを再現してみたいと思います...バブルアップしているようです-意図したよりも少し大きくなり、その後通常のサイズに戻ります. これまでのところ、コアアニメーションで同様のアニメーションを作成する方法を見つけようとして途方に暮れているようです。誰にも何か提案や指針がありますか?

前もって感謝します!

4

2 に答える 2

2

私は、システムのコールアウトバブルとほぼ同じカスタムコールアウトバブルを開発しましたが、高さと内容に対してより柔軟性があります。コード例については、 AsynchronySolutionsブログの私の投稿を参照してください。また、Core Animationを使用してコールアウトをアニメーション化し、マップピンから飛び出しているように見えるようにする手順についても詳しく説明します。これには、ビューをスケーリングおよび変換するアフィン変換が含まれます。

于 2010-10-08T14:28:29.470 に答える
1

私はこれのためのまともな解決策を見つけました。ftutilsライブラリは、ポップインアニメーションを提供します。呼び出すのも本当に簡単です:

#import "FTAnimation.h"

[self.viewToAnimate popIn:.4 delegate:nil];
于 2009-12-20T18:35:10.313 に答える