私は複数のマップピンを持つマップを持っています。各ピンをクリックすると、選択したピンに固有の情報が表示されます。ピンについての位置情報を言うことができます。didSelect実行はdidDeelectアニメーションを終了するために待っていません
は、以下のユースケースを想像:ピンが選択されている場合
1-、選択されたピンに関する情報をビューの表示をアニメーション化。
-2-異なるピンは、ステップ2からアニメーションが終了すると、ステップ1
3-て選択されるビューの隠蔽をアニメーション、選択された場合、特定の情報を含むビューの表示をアニメーションは新しく選択されたピンについて
私はステップ2のためのアクションを実行しようとしたら、didDeselct機能が実行され、次のmapKit機能
func mapView(_ mapView: MKMapView, didDeselect view: MKAnnotationView) {
UIView.animate(withDuration: 0.5, animations: {
// Animate views
})
}
func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView){
// did select code
UIView.animate(withDuration: 0.5, animations: {
// Animate views
})
}
を実装しています。その後、didSelect関数のロジックが実行されます。これは動作しますが、問題が1つあります。 didDelectのアニメーションの実行は、didSelect関数が実行される前に終了しません。
didDeselctのアニメーションが完了するまでdidSelectの実行をブロックするにはどうすればよいですか。
私はこの関数のロジックをアニメーションコード内に置くことができないように、まだdidSelect関数が必要です。
ありがとう、これは私が考えていたものですが、フレームワークに組み込まれたこれを行う方法があると思いました。私はこれを試してみる。 –
フレームワークに組み込まれている方法があるかもしれませんが、私はそれほど多くの経験を素早く持っている人ではありません。問題がなければ、これを試してみてください。そうでない場合は、私に知らせてください。 – Faruk
ありがとうございました。 –