MKMapView でピンが初めて選択された直後に、UILabel を leftCalloutAccessoryView として MKAnnotationView に追加しようとしています。ラベルの追加は問題ではありません。吹き出しが選択されて開きます。これは、吹き出しビューにラベルを追加するときです。吹き出しはスライド アニメーションで自動的に左に展開され、2 本の線を含む新しいラベルが表示されます。残念ながら、最初にそのピンに関する特定の情報が必要なため、ピンが選択された後にラベルを追加する必要があります。
問題は、このラベルのテキストが、正しくレンダリングされていないように、多少「ぼやけている」ことです。吹き出しの選択を解除して再度選択すると、すべてが正しく描画されます。
ラベルを追加する方法は次
のとおりです。 MKPinAnnotationView の作成中に、ビューの「選択された」プロパティのオブザーバーとして登録します。これは、ピンを選択するデリゲート メソッドがないためです。ビューでピンが選択されると、オブザーバー メソッドが起動し、テキスト ラベルをビューに追加するだけです。(2 行の UILabel を作成し、明確な背景色と太字の白いシステム フォントを作成し、leftCalloutAccessoryView を設定し、ラベルを解放します)。setNeedsDisplay、setNeedsLayout、および他のいくつかのことを試しましたが、ピンが2回目に選択されるまで、ラベルのテキストがぼやけています。
このラベルをぼやけずに正しく描画する方法はありますか?
前もって感謝します!