都市を表す円と正方形がたくさんある静的な地図画像があります。scrollView の下にサブクラス化された imageView に画像を読み込んで、ユーザーのタッチをキャプチャし、マップ全体でズーム/スクロールできるようにしました。私の課題は、ユーザーが都市のこれらの円/正方形のいずれかに触れるたびにラベルをポップアップして、それがどの都市であるかを伝え、都市の詳細ビューをロードすることです。「touchesBegan」イベント中にそれらを参照できるように、imageView マップに基づいて都市のすべての相対 CGPoints を辞書にプリロードできると考えましたが、すぐに頭を悩ませて、おそらくこれについて行っています間違った道。
これまでのところすべてが機能しており、タッチの CGPoint の x 座標と y 座標をキャプチャできます。私が抱えている最大の問題は、辞書にあるかもしれない離散点にユーザーが触れているかどうかを判断することです。つまり、辞書に「Boston = NSPoint: {235, 118};」が含まれている場合 ユーザーが正確になるまでタッチを繰り返さなくても、ユーザーがそのポイントに近づいたことをどのように知ることができますか? ユーザーのタッチが既存のポイントに「近い」かどうかを判断する簡単な方法はありますか? 私はこれを正しい方法で行っていますか?
頭の後ろでのアドバイスや平手打ちは大歓迎です。
ありがとう、マイク